Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Abfragen in MySQL-Tabelle können nicht gesucht werden

Es gibt mehrere Fehler bei der Art und Weise, wie Sie dies tun.

Erstens geben Sie Ihren Wert nicht in Anführungszeichen:'$key'

$query = "SELECT * FROM `keys` WHERE `key` = '$key'";

Zweitens ist Ihr Code weit offen für SQL-Injection. Entkommen Sie Ihrem Wert:

$key = mysql_real_escape_string($_GET["key"]);

Der obige Code ist das absolute Minimum, das Sie tun müssen.
Als Nächstes muss mysql_ Funktionen sind seit langem veraltet und wurden in PHP 7 entfernt.

Sie müssen entweder zu mysqli_ wechseln oder PDO . Je früher Sie wechseln, desto besser. Bitte lesen Sie diese Frage für weitere Informationen:Wie kann ich die SQL-Injection in PHP verhindern?

Abgesehen von all den oben genannten Problemen ersparen Sie sich (und noch mehr anderen, falls sie jemals Ihren Code lesen müssen) Kopfschmerzen, wenn Sie niemals Schlüsselwörter und reservierte Wörter als Tabellen- oder Spaltennamen, wie Jay Blanchard bemerkt hat.