Sie befinden sich hier im Forenarchiv von phpforum.de wenn Sie direkt ins Forum möchten, klicken Sie bitte hier. Zur Startseite kommen Sie hier.

mysql_query Insert funktioniert(e) nicht

hallo, forum!
auch auf die gefahr hin mich der lächerlichkeit preis zu geben will ich hier dennoch eine kleinigkeit los werden, die anderen php/mysql-novizen vielleicht ein wenig ärger ersparen kann.
gestern abend/nacht bin ich fast verzweifelt, wiel ich eine einfache mysql anforderung einfach nicht absetzen konnte.
ich wollte ein paar variablen mittels php in eine tabelle schreiben. unter den variablen gabs auch eine mit dem verheerenden namen "alter". die sollte von einem formular an ein php file übergeben werden und anschließend mittels $query="INSERT INTO users (...,'alter',...) VALUES (...,'$alter',...)"; mysql_query($query); in eine tabelle geschrieben werden. diese operation schlug dauernd fehl. ich habe alle möglichen syntax-varianten ausprobiert, mir fehlermeldungen anzeigen lassen... ich kam nicht auf den fehler. bis mir dann auf einmal auffiel, dass ich bei der übergabe auch einen regulären ausdruck benutze, nämlich "ALTER".

eine umbenennung der variable "$alter" und aller verwandeten bezeichnungen in "age" löste das problem sofort.

so, ich hoffe einigen verzweifelten php/mysql-ausprobieren, wie ich einer bin, damit geholfen habe, ein bisschen ärger und viel zeit zu sparen.

beware of regular expressions!

maga

Hier gehts zum Orginal Eintrag "mysql_query Insert funktioniert(e) nicht" im Forum

Antworten

ich glaub du hast keine Ahnung was eigentlich Reguläre Ausdücke sind, "ALTER" ist bestimmt keiner.

Es ist nur ein reserviertes Wort von MySQL, so wie select, udpate etc... das verwirt mysql. [url]http://dev.mysql.com/doc/mysql/en/Reserved_words.html[/url]

Um sie trotzdem zu verwerden müssen sie mit Backticks ` umschlossen werden.

INSERT INTO `users` ( ..., `alter`, .... ) VALUES ( ..., $alter, ... )


Hier gehts zum Orginal Eintrag "mysql_query Insert funktioniert(e) nicht" im Forum
 
phpforum.de | Impressum