![]() |
PHP&MySQL
ich habe da eine kleine fragen zu php und mysql - besser gesagt zu einen kleinen script das nicht funktioniert
es werden mehr werte eingetragen als ich da jetzt geschrieben habe $vorname = Martin Es kommt der Fehler Nicht Erfolgreich weil Feld Martin existiert nicht! ich habe die datenbank mit feldname Vorname aber angelegt! warum schreibt er eigentlich feldname martin???????????? aja verbunden mit der datenbank bin ich natürlich auch $sql = "INSERT INTO mannschaft (Vorname) VALUES($vorname)"; if(mysql_query($sql, $verbindung)) { echo "Erfolgreich \n"; } else { echo "Nicht Erfolgreich \n"; echo mysql_errno() . ": " . mysql_error() . " \n"; } mysql_close(); |
?
|
Hi
also ich kenn MySQL und PHP nicht, aber der Fehler liegt meines Erachtens an fehlenden Hochkomma's. Martin wird nicht als Stringkonstante erkannt und deshalb behandelt es MySQL als Feldname. Du schreibst: $vorname = Martin. Müsste es nicht heissen: $vorname = "Martin" ? |
nein ist es nicht, weil die daten per formular 100%ig richtig reinkommen - ich hab $vorname=martin nur so geschrieben - natürlich müsste es richtig $vorname="martin"; heißen
also weiß irgendwer von euch woran das liegen kann? |
Trotzdem, der Fehler deutet ganz darauf hin, dass MySQL Martin nicht als Stringkonstante erkennt und daher annimmt, dass es ein Feldname ist! Wenn der Fehler nicht an der ersten Zuweisung liegt dann, eben an der zweiten.
Was der MySQL-Parser zu sehen bekommt ist offensichtlich das Command: INSERT INTO mannschaft (Vorname) VALUES(Martin) heissen müsste es: INSERT INTO mannschaft (Vorname) VALUES("Martin") Wie gesagt ich kenne PHP nicht u. weiss daher nicht wie es die Variablenersetzung vornimmt. Vielleicht geht es wenn du in der zweiten Zuweisung einfache Hochkommas beim Variablennamen einsetzt: $sql = "INSERT INTO mannschaft (Vorname) VALUES('$vorname')"; |
ich mach das so das ich anzeige was in die datenbank eingefügt wurde und da schreibe ich:
echo "Vorname: $vorname \n"; und es wird Vorname: Martin angezeigt also kanns an dem auch nicht liegen oder? aber ich probiers einmal |
hi,
probiers mal mit: $sql = "INSERT INTO mannschaft (Vorname) VALUES('".$vorname."')"; des problem ist, dass in sql strings in ' gesetzt werden müssen. greetz, spy |
wie noo1sda schon richtig geschrieben hat:
$sql = "INSERT INTO mannschaft (Vorname) VALUES ('$vorname')"; müsste doch funzen, oder? |
ja funktioniert vielen dank an alle
|
gibts wo ein e-book für php und mySQL zu saugen?
|
Alle Zeitangaben in WEZ +2. Es ist jetzt 11:40 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
© 2009 FSL Verlag