[RESOLU] verifier si donne bien enregistrer en BDD avec PDO

Eléphant du PHP | 150 Messages

01 sept. 2015, 21:59

bonjour,

j'ai des requetes ou je voudrai verifier si elles ont bien ete enregistrer

Code : Tout sélectionner

$resultat = Bdd::connectBdd()->prepare('UPDATE devis SET move_devis=:move_devis, intro_devis=:intro_devis, tx_remise=:tx_remise, descr_devis=:descr_devis WHERE num_bdc='.$_POST['devis_num'].' AND num_sub_devis='.$_POST['devis_sub_num'].''); $resultat -> bindParam(':move_devis', $coef); $resultat -> bindParam(':intro_devis', $_POST['intro_devis']); $resultat -> bindParam(':tx_remise', $_POST['reduc_pac']); $resultat -> bindParam(':descr_devis', $descr_res); $resultat -> execute();
avant on utilisait :

Code : Tout sélectionner

if(!mysql_affected_rows) { echo "erreur"; }
comment procédé dans mon cas avec PDO svp

j'ai vue ceci mais je ne c'est comment l'utilisé

PDOStement::rowCount()


merci par avance

Mammouth du PHP | 2703 Messages

01 sept. 2015, 22:11

http://php.net/manual/fr/pdostatement.rowcount.php
donc
$nb = $resultat->rowCount();

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

03 sept. 2015, 10:30

Bonjour,

Si tu n'as pas besoin de connaitre le nombre d'enregistrement affectés et que tu veux simplement savoir s'il a eu des erreurs ou non lors de l'exécution de la requête, il te suffit de tester la valeur retournée par la méthode execute().
Cette fonction retourne TRUE en cas de succès ou FALSE si une erreur survient.
$success = $resultat->execute();
if (!$success)
   {   echo "erreur";      }
Ce n'est pas en améliorant la bougie que l'on a inventé l'ampoule...