MySQL - Tabelle speichert keine Daten
Hi NG,
ich kann bei einer MySQL-Tabelle keine Datensätze hinzufügen, obwohl ein Primärschlüssel und ein Timestamp-Feld definiert sind. Das Primärschlüssel-Feld ist auf AutoIncrement gestellt.
Woran liegt das und wie kann ich den Fehler beheben.
Gruß
Andy
ich kann bei einer MySQL-Tabelle keine Datensätze hinzufügen, obwohl ein Primärschlüssel und ein Timestamp-Feld definiert sind. Das Primärschlüssel-Feld ist auf AutoIncrement gestellt.
Woran liegt das und wie kann ich den Fehler beheben.
Gruß
Andy
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 203482
Url: https://administrator.de/forum/mysql-tabelle-speichert-keine-daten-203482.html
Ausgedruckt am: 25.04.2025 um 07:04 Uhr
35 Kommentare
Neuester Kommentar
Hallo,
Gruß
@d4shoerncheN
Woran liegt das und wie kann ich den Fehler beheben.
Das könnten wir dir eventuell sagen, wenn du uns den Fehler auch mitteilst. Gibt es irgendwelche Fehlermeldungen, wenn ja, welche!?Gruß
@d4shoerncheN
Hallo Andy,
bitte setz deinen Code zwischen folgende Befehle
< code>
DEIN CODE
< /code>
Leerzeichen nach den < bitte noch entfernen.
Gruß
@d4shoerncheN
bitte setz deinen Code zwischen folgende Befehle
< code>
DEIN CODE
< /code>
Leerzeichen nach den < bitte noch entfernen.
Gruß
@d4shoerncheN
Hi
bitte in Code Tags packen.
Heißt deine Tabelle wirklich mitgieder ?
Außerdem würde ich zum Aufbauen der Verbindung folgenden Code verwenden:
Ich glaube bei dir hackts schon beim Aufbau der Verbindung
LG
bitte in Code Tags packen.
Heißt deine Tabelle wirklich mitgieder ?
Außerdem würde ich zum Aufbauen der Verbindung folgenden Code verwenden:
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
<?php
$link = mysql_connect('localhost', 'mysql_user', 'mysql_password');
if (!$link) {
die('Verbindung schlug fehl: ' . mysql_error());
}
echo 'Erfolgreich verbunden';
mysql_close($link);
?>
Ich glaube bei dir hackts schon beim Aufbau der Verbindung
LG
Zitat von @catachan:
Hi
wie sieht denn deine Zeile 57 aus ? Soll ich raten ?
Wahrscheinlich hast du ?> oder einen ; zu viel.
LG
Hallo catachan,Hi
wie sieht denn deine Zeile 57 aus ? Soll ich raten ?
Wahrscheinlich hast du ?> oder einen ; zu viel.
LG
soll ich dir meine Glaskugel leihen?
Gruß
@d4shoerncheN
Hallo AndyAh,
poste deinen gesamten Code hier doch noch einmal bitte und diesmal in den -Tags vom Forum, damit dein Code leicht zu lesen und zu deuten ist.
Gruß
@d4shoerncheN
poste deinen gesamten Code hier doch noch einmal bitte und diesmal in den -Tags vom Forum, damit dein Code leicht zu lesen und zu deuten ist.
Gruß
@d4shoerncheN
Dann übernehme ich das nun...
Wie bereits angesprochen, heißt deine SQL-Tabelle wie in Zeile 21 angegeben:
$sql_befehl = "INSERT INTO mitgieder(
oder ehr mitglieder!?
Gruß
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
<?php
$anrede = $_POST["anrede"];
$vorname = $_POST["vorname"];
$nachname = $_POST["nachname"];
$strasse = $_POST["strasse"];
$plz = $_POST["plz"];
$email = $_POST["email"];
$kommentar = $_POST["kommentar"];
$daten = "adressen";
$db = mysql_connect ("localhost", "root", "");
if (!$db) {
die('Verbindung schlug fehl: ' . mysql_error());
$select_db = mysql_select_db($daten);
$sql_befehl = "INSERT INTO mitgieder(
Anrede,
Vorname,
Nachname,
strasse,
plz,
EMail,
Kommentar)
values(
'$anrede',
'$vorname',
'$nachname',
'$strasse',
'$plz',
'$email',
'$kommentar')";
$result = mysql_query($sql_befehl);
if ($result)
{
echo "gespeichert";
}
else
{
echo "nicht gespeichert";
}
mysql_close($db);
?>
Wie bereits angesprochen, heißt deine SQL-Tabelle wie in Zeile 21 angegeben:
$sql_befehl = "INSERT INTO mitgieder(
oder ehr mitglieder!?
Gruß
Moin,
du warst doch letzte Woche schonmal mit dem gleichen Problem hier, oder?
Ersetze mal bitte
durch
Und poste dann das Query hier innerhalb code-tags(!!!) bzw füge das ganze mal in myPHPAdmin als ein und schau ob dann in die Table geschrieben wird. Ansonten: Poste die Fehlermeldung hier (innerhlab code tags)
/EDIT: Und poste doch bitte mal innerhalb code-tags(!!!) die Definition der Tabelle.
lg,
Slainte
du warst doch letzte Woche schonmal mit dem gleichen Problem hier, oder?
Ersetze mal bitte
1
$result = mysql_query($sql_befehl);
1
echo "<br>" . $sql_befehl ."<br>";
/EDIT: Und poste doch bitte mal innerhalb code-tags(!!!) die Definition der Tabelle.
lg,
Slainte

Hallo,
wie ich sehen solltest du noch einiges in PHP lernen. Aber egal. Jeder fängt einmal an.
Zwecks Fehlerprüfung - du musst das gleiche machen wie mit der Verbindung:
Du solltest dir angewöhnen die Spalten entweder alle klein oder alle Groß zu schreiben - so verwirrst du dich nur selbst und schaffst Fehlerquellen. Außerdem solltest du dir einmal PDO anschauen zwecks Sicherheit und MySQL Injections!
Du könntest auch zum Debugging folgendes schreiben:
Damit wird die ein Fehler ausgegeben, mit dem es sich leichter arbeiten lässt!
Welchen Fehler erhälst du?
Gruß
Florian.
wie ich sehen solltest du noch einiges in PHP lernen. Aber egal. Jeder fängt einmal an.
1
$select_db = mysql_select_db($daten);
1
2
3
2
3
if (!$select_db) {
die('Verbindung schlug fehl: ' . mysql_error());
}
Du solltest dir angewöhnen die Spalten entweder alle klein oder alle Groß zu schreiben - so verwirrst du dich nur selbst und schaffst Fehlerquellen. Außerdem solltest du dir einmal PDO anschauen zwecks Sicherheit und MySQL Injections!
Du könntest auch zum Debugging folgendes schreiben:
1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9
if ($result)
{
echo "gespeichert";
}
else
{
echo "nicht gespeichert";
echo mysql_error();
}
Damit wird die ein Fehler ausgegeben, mit dem es sich leichter arbeiten lässt!
Welchen Fehler erhälst du?
Gruß
Florian.
Zitat von @AndyAh:
Hi,
jetzt geht es. Ich habe aus dem INSERT einfach die Datenfeldnamen herausgenommen.
Gruß
Andy
Hi,
jetzt geht es. Ich habe aus dem INSERT einfach die Datenfeldnamen herausgenommen.
Gruß
Andy
/facepalm

Zitat von @AndyAh:
Hi,
jetzt geht es. Ich habe aus dem INSERT einfach die Datenfeldnamen herausgenommen.
Gruß
Andy
Hi,
jetzt geht es. Ich habe aus dem INSERT einfach die Datenfeldnamen herausgenommen.
Gruß
Andy
Dann hast du doch schon deinen Fehler!!
Hast du die Feldnamen in der Datenbank genauso geschrieben, wie im Script (Groß-/ Kleinschreibung). Du solltest dir angewöhnen, die SQL-Befehler so aussehen zu lassen:
1
$sql_befehl = "INSERT INTO `mitglieder`(`Anrede`,`Vorname`,`Nachname`) VALUES ('".$anrede."','".$vorname."','".$nachname."');
und bitte jede Variable $vorname, etc mit mysql_real_escape_string sichern!