
Fehler beim Zugriff auf Datenbank
Re: Fehler beim Zugriff auf Datenbank
Hab mich zu früh gefreut, mir fällt grade auf, dass es bei INSERT INTO und bei UPDATE immer zu dem selben Fehler kommt.
Das wunderliche ist aber, dass ich mich nun bei den codes extrem an die "Norm" gehalten habe.
Der genannte Ausschnitt aus warteliste.php:
Bei UPDATE ist es fast der selbe Fehler.Allgemeiner Fehler
SQL ERROR [ mysqli ]
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'alter, geburtstag, geschlecht, vorname, stadt, job, wie, ip, obersteregel, frage' at line 1 [1064]
SQL
INSERT INTO phpbb_warteliste_anmeldedaten (nickname, datum) VALUES ('dfhfhdf', '31.12.2008')
BACKTRACE
FILE: includes/db/mysqli.php
LINE: 163
CALL: dbal->sql_error()
FILE: warteliste.php
LINE: 1166
CALL: dbal_mysqli->sql_query()
Das wunderliche ist aber, dass ich mich nun bei den codes extrem an die "Norm" gehalten habe.
Der genannte Ausschnitt aus warteliste.php:
Ich hoffe mal jemand von euch kann mir dabei noch helfen?
$sql_ary = array(
'nickname' => $nickname,
'datum' => $datum
);
$db->sql_query('INSERT INTO ' . WARTELISTE_ANMELDEDATEN_TABLE . ' ' . $db->sql_build_array('INSERT', $sql_ary)); //Zeile 1166
Re: Fehler beim Zugriff auf Datenbank
Das scheint aber nicht die problemtische Query zu sein. Es geht irgendwie um:
Und hier denke ich mal insbesondere um ALTER, denn das ist ein reservierter Begriff für die DB. Versuche, dieses alter in Backticks zu setzen. AlsoYou have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'alter, geburtstag, geschlecht, vorname, stadt, job, wie, ip, obersteregel, frage' at line 1 [1064]
Code: Alles auswählen
`alter`
Gruss, Miriam.
Ich schmeiß' alles hin und...
... lasse es liegen
Ich schmeiß' alles hin und...
... lasse es liegen
Re: Fehler beim Zugriff auf Datenbank
Das liegt daran, dass ich den Code ein wenig gekürzt habe, dachte es wäre zu lang. Aber auch nur die gekürzte Form verursacht diese Fehler.
Hier mal der komplette Fehler- und Codeausschnitt
Edit:
Lag scheinbar doch an alter, habs jetzt in age geändert und es funktioniert.
Dass nach dem entfernen dann trotzdem ein Fehler auftrat lag wohl an der Einstellung "NOT NULL" in der Datenbank unter diesem Feld.
Hat sich damit erledigt, danke Purzel81 und Miriam
Hier mal der komplette Fehler- und Codeausschnitt
INSERT INTO phpbb_warteliste_anmeldedaten (nickname, email1, email2, status, alter, geburtstag, geschlecht, vorname, stadt, job, wie, ip, obersteregel, frage01, frage02, frage03, frage04, frage05, frage06, frage07, frage08, frage09, frage10, antwort01, antwort02, antwort03, antwort04, antwort05, antwort06, antwort07, antwort08, antwort09, antwort10, fehler, restpunkte, datum, gepruft, geloscht) VALUES ('sdfgdfg', 'gdfgd', '???', '-', 'sdgdfg', 'dfgdf', 'maennlich', 'sdgdf', 'gsdfgdf', 'gsdgdf', 'gsdfgdf', '-', 'gsdfg', '-', '-', '-', '-', '-', '-', '-', '-', '-', '-', '1', '1', '1', '3', '1', '1', '2', '2', '2', '1', 7, 7, '31.12.2008', 'nein', 'nein')
"Alter" ist bereits in Backticks, aber auch, wenn ichs komplett rauslösche, kommt der Fehler, wie bereits genannt.
$sql_ary = array(
'nickname' => $nickname,
'email1' => $email1,
'email2' => $email2,
'status' => $status,
'alter' => $alter,
'geburtstag' => $geburtstag,
'geschlecht' => $geschlecht,
'vorname' => $vorname,
'stadt' => $stadt,
'job' => $job,
'wie' => $wie,
'ip' => $ip,
'obersteregel' => $obersteregel,
'frage01' => $frage01,
'frage02' => $frage02,
'frage03' => $frage03,
'frage04' => $frage04,
'frage05' => $frage05,
'frage06' => $frage06,
'frage07' => $frage07,
'frage08' => $frage08,
'frage09' => $frage09,
'frage10' => $frage10,
'antwort01' => $antwort01,
'antwort02' => $antwort02,
'antwort03' => $antwort03,
'antwort04' => $antwort04,
'antwort05' => $antwort05,
'antwort06' => $antwort06,
'antwort07' => $antwort07,
'antwort08' => $antwort08,
'antwort09' => $antwort09,
'antwort10' => $antwort10,
'fehler' => $fehlercounter,
'restpunkte' => $fehlercounter,
'datum' => $datum,
'gepruft' => nein,
'geloscht' => nein
);
$db->sql_query('INSERT INTO ' . WARTELISTE_ANMELDEDATEN_TABLE . ' ' . $db->sql_build_array('INSERT', $sql_ary));
Edit:
Lag scheinbar doch an alter, habs jetzt in age geändert und es funktioniert.
Dass nach dem entfernen dann trotzdem ein Fehler auftrat lag wohl an der Einstellung "NOT NULL" in der Datenbank unter diesem Feld.
Hat sich damit erledigt, danke Purzel81 und Miriam

Zuletzt geändert von lachkopf am 31.12.2008 18:05, insgesamt 2-mal geändert.
Re: Fehler beim Zugriff auf Datenbank
schreib mal age (oder irgendwas anderes) und lass alter dafür weg 
