Recoverable fatal error: Object of class PDOStatem

Résolu/Fermé
yazou Messages postés 85 Date d'inscription mardi 7 novembre 2006 Statut Membre Dernière intervention 17 août 2023 - Modifié le 12 juin 2018 à 11:05
yazou Messages postés 85 Date d'inscription mardi 7 novembre 2006 Statut Membre Dernière intervention 17 août 2023 - 12 juin 2018 à 16:41
BoBonjour,

  try 
    {

    $connection=new PDO ($dsn, $username, $password,$options);

    $connection->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

    $sql=$connection->prepare("INSERT INTO contact (nom, mail, message) VALUES (:lename, :lemail, :lemessage)");        
    
    $sql->bindValue(':lename',$name, PDO::PARAM_STR); 
    $sql->bindValue(':lemail',$mail_visiteur, PDO::PARAM_STR); 
    $sql->bindValue(':lemessage',$message, PDO::PARAM_STR); 
     
    var_dump($name);
   
    $sql->execute();
    
    }
    

    
    catch (PDOException $e){
        
        echo $sql."<br>". $e->getMessage(); 
        
    }




Salut
Ce code me renvoi
Recoverable fatal error: Object of class PDOStatement could not be converted to string
Ou est le probleme ?
Merci

2 réponses

jordane45 Messages postés 38136 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 16 avril 2024 4 647
12 juin 2018 à 11:12
Bonjour,
Regarde bien ce que tu as écris :
echo $sql."<

hors.. dans ton cas.... $sql est l'objet du prépare.

Dans l'idéal, histoire que ton code soit un peu plus propre :
//connexion à la bdd
try  {
    $connection=new PDO ($dsn, $username, $password,$options);
    $connection->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch (PDOException $e){
  echo " Erreur lors de la connexion ! " .$e->getMessage();
  die();
}

//puis ta (ou tes...) requêtes :

try{
    $sql = "INSERT INTO contact (nom, mail, message) VALUES (:lename, :lemail, :lemessage)";
    $prep = $connection->prepare($sql);        
    $prep->bindValue(':lename',$name, PDO::PARAM_STR); 
    $prep->bindValue(':lemail',$mail_visiteur, PDO::PARAM_STR); 
    $prep->bindValue(':lemessage',$message, PDO::PARAM_STR); 
    $prep->execute();
} catch (PDOException $e){
    echo " Erreur dans la requête ".$sql . "<br>" .$e->getMessage();
}




0
yazou Messages postés 85 Date d'inscription mardi 7 novembre 2006 Statut Membre Dernière intervention 17 août 2023 2
12 juin 2018 à 16:41
Merci !
0