Il y a plusieurs choses qui ne vont pas dans votre façon de procéder.
Tout d'abord, vous ne citez pas votre valeur :'$key'
$query = "SELECT * FROM `keys` WHERE `key` = '$key'";
Deuxièmement, votre code est largement ouvert à l'injection SQL. Échappez à votre valeur :
$key = mysql_real_escape_string($_GET["key"]);
Le code ci-dessus est le minimum absolu que vous devez faire.
La prochaine chose est que le mysql_
les fonctions sont obsolètes depuis longtemps et ont été supprimées dans PHP 7.
Vous devrez basculer vers mysqli_
ou PDO
. Plus tôt vous changez, mieux c'est.Veuillez lire cette question pour plus d'informations :Comment empêcher l'injection SQL en PHP ?
En dehors de tous les problèmes ci-dessus, vous vous épargnerez (et encore plus aux autres, s'ils doivent lire votre code) des maux de tête si vous n'utilisez jamais mots clés et mots réservés comme noms de table ou de colonne, comme l'a noté Jay Blanchard.