Echec PDO

Fermé
crypt0net Messages postés 4 Date d'inscription mercredi 8 juillet 2015 Statut Membre Dernière intervention 2 septembre 2015 - 2 sept. 2015 à 15:39
crypt0net Messages postés 4 Date d'inscription mercredi 8 juillet 2015 Statut Membre Dernière intervention 2 septembre 2015 - 2 sept. 2015 à 15:58
Bonjour, Bonjour
je refais des pages existantes pour sécuriser. PDO me semble une très bonne idée pour ce que je veux faire, ceci dit dans le code suivant est toujours en echec "un probleme est survenue lors de l'enregistrement."
de plus j'ai essayé d'activer le debugage avec PDO je n'y arrive pas.

pouvez vous me dire si vous remarquez quelque chose qui cloche dans le code?
aussi je souhaite savoir comment activer le mode debugage car là aucune erreur de s'affiche du coup je ne sais pas du tout ce qui ne va pas !

merci par avance, très bonne journée a vous et bonne rentrée pour ceux qui reprenne cette semaine.



----------------début code----------------------------------------------------
$email = $pdo->quote($_POST["email"]);


$sql= 'NSERT INTO table_utilisateurs (email )
VALUES (?)';

$prep = $pdo->prepare($sql);

$prep->bindValue(1, $email, PDO::PARAM_STR);

$resultat_exec = $prep->execute();
if($resultat_exec)
{
$result = array(
"response" => "success",
"text" => "Heureux de vous comptez parmez nous. Vous allez reçevoir un mail pour la validation de votre compte ."
);

}else{
$result = array(
"response" => "error",
"text" => "un probleme est survenue lors de l'enregistrement."
);
}
---------------------------fin codr----------------------------------------------

2 réponses

Tomy2e Messages postés 816 Date d'inscription jeudi 21 février 2013 Statut Membre Dernière intervention 18 août 2016 858
2 sept. 2015 à 15:47
Bonjour, il y a une erreur dans la requête SQL (ligne 4 en comptant les sauts de ligne), c'est INSERT et non pas NSERT. J'ai pas regardé plus le code, dis nous si ça fonctionne ou pas.
1
crypt0net Messages postés 4 Date d'inscription mercredi 8 juillet 2015 Statut Membre Dernière intervention 2 septembre 2015
2 sept. 2015 à 15:56
merci pour votre réactivité, en fait c'étais juste le copier coller du code. je vais voir le lien proposé par Pilet pour gérer les erreur.
0
Pitet Messages postés 2826 Date d'inscription lundi 11 février 2013 Statut Membre Dernière intervention 21 juillet 2022 524
2 sept. 2015 à 15:49
Salut,

Pour commencer tu n'as pas besoin d'utiliser la méthode quote() de PDO si tu utilises une requête préparée avec marqueurs, la méthode bindValue() ajoute déjà les quotes et te protège contre les injections sql.

Il manque également le I de INSERT au début de ta requête.

Enfin pour afficher les messages d'erreur PDO, il faut définir le mode d'erreur à la connexion. Regarde les exemples de cette doc : https://www.php.net/manual/fr/pdo.error-handling.php

Bonne journée
1
crypt0net Messages postés 4 Date d'inscription mercredi 8 juillet 2015 Statut Membre Dernière intervention 2 septembre 2015
2 sept. 2015 à 15:58
Merci pour le lien, on m'a mis sur une autre tache, je commencerai par voir cette gestion d'erreur dès que je reviens sur cette tache.
Bonne journée
0