Bonjour à tous,
Je suis en train de passer tout doucement à PDO, je ne sais pas trop si on peut dire ça comme ça, mais je suppose que vous allez comprendre ce que je veux dire.
Je récupère une chaîne de caractère qui a été écrite par un utilisateur lambda qui a donc la possibilité d'y mettre absolument n'importe quoi comme caractère, issu de n'importe quelle touche du clavier.
Le problème, c'est que quand je veux mettre cette "ligne récupérée" dans ma base de données, ça génére une jolie erreur (j'ai juste enlevé le chemin vers mon fichier) :
Les lignes de codes qui correspondent sont les suivantes:PDOException: 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 'agit plus pr?cisement de Onnezies-Hoonelles )' WHERE n_indi='18I' and n_eve='31' at line 1 in XXXXX on line 312
Même si je n'étais pas vraiment convaincu, j'ai tout de même essayé htmlspecialchars() et htmlentities() mais sans succès.
Code php : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 $req = "UPDATE evenements SET note = '$evenement->note' WHERE n_indi='$individu->ref' and n_eve='$nb_eve'"; $resultat = $pdo->exec($req);
Il me faudrait une fonction qui dise au serveur "prends tout ce qu'il y a entre les quotes qui sont aux extrémités", mais existe-t-elle ?
Merci et à bientôt,
Alexis.
Partager