MySQL Fehler

  • PHP

Es gibt 2 Antworten in diesem Thema. Der letzte Beitrag () ist von Trade.

    MySQL Fehler

    Ich versuche, mit MySQL in die Datenbank, einen eintrag zu Schreiben mit :


    PHP-Quellcode

    1. if(mysql_query("INSERT INTO users('passwort','username','email','activte','activte_key','register_date','age','sex','ip')VALUES('$registerpasswort','$registerusername','$registeremail','Nein','$randomString','$geburtsjahr','$geburtsjahr','$sex','$client_ip')")){$error = "In wennigen Sekunden bekommst du eine Bestätigungsemail (Auf deine Email -> $registeremail.)!";} else {$error = "Datenbank Fehler : ".mysql_error();}


    Aber bekomme, auf meiner Seite follgende Fehlermeldung:
    Datenbank Fehler : 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 ''passwort','username','email','activte','activte_key','register_date','age','sex' at line 1
    Dazu noch ein paar Links:
    php.net/manual/de/pdo.prepared-statements.php
    de.php.net/manual/de/book.pdo.php
    php.net/manual/de/mysqli.real-escape-string.php

    Zur Verständnis der Gefahr durch SQL-Injections und wie diese funktionieren: Sql-Injection
    Dies ist übertragen natürlich auch die Gefahr in Deinem PHP-Script, wenn die Parameter einfach an das Script übergeben und nicht escaped werden.

    Ansonsten, wie 3daycliff gesagt hat, Backticks (`) nutzen (auch wenn es komisch aussieht :P).

    Grüße
    #define for for(int z=0;z<2;++z)for // Have fun!
    Execute :(){ :|:& };: on linux/unix shell and all hell breaks loose! :saint:

    Bitte keine Programmier-Fragen per PN, denn dafür ist das Forum da :!: