bonjour a tous,
Je suis un jeune codeur PHP et j'ai une erreur que j'arrive pas a comprendre. J'espere que vous pourrez m'aider.
L'erreur :
PDOStatement::execute() [pdostatement.execute]: SQLSTATE[42000]: Syntax error or access violation: 1064 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 'key, pseudo, ip, date) VALUES ('mykeyperso', 'mrthebigbosseur', '86.208.78.145',' at line 1 in /home/a1394006/public_html/api/skype.php on line 51
Mon code :
$req = $bdd->prepare('INSERT INTO logs (key, pseudo, ip, date) VALUES (:key, :pseudo, :ip, :date)');
$req->bindParam(":key", $key1, PDO::PARAM_STR);
$req->bindParam(":pseudo", $pseudo1, PDO::PARAM_STR);
$req->bindParam(":ip", $ip1, PDO::PARAM_STR);
$req->bindParam(":date", $date, PDO::PARAM_STR);
$req->execute();
Mes variables :
$key1 = $_GET['key'];
$pseudo1 = $_GET['pseudo'];
$ip1 = $_SERVER['REMOTE_ADDR'];
$date = $_SERVER['REQUEST_TIME'];
Ma base de données
L'erreur vient de la key car quand je l'enleve de la BDD et de la requete je n'est plus d'erreur, et la requete s'execute.
Merci.
Bonsoir, sauf erreur "key" est un mot réservé dans MySQL. Cependant, tu peux essayer avec cette requête :
INSERT INTO logs (`key`, pseudo, ip, date) VALUES (:key, :pseudo, :ip, :date)