PDO prepare, execute, exec



  • Bonjour, j'ai un petit souci que je n'arrive pas a résoudre. J'ai ma requête :```
    $nb = $bdd->exec('UPDATE serveurs SET pseudo = ''.$nom1.'' WHERE pseudo = ''.$nom2.''');
    echo $nb.' serveurs ont été modifié';

    $nb affiche le nombres de serveurs modifié, maintenant j'ai mon autre requête (que je trouve plus approprié vue que la requête change suivant une variable POST) :```
    $req = $bdd->prepare('UPDATE jeux_video SET possesseur = :nom1 WHERE possesseur = :nom2');
    	$nb = $req->execute(array(
    					'nom1' => $nom1,
    					'nom2' => $nom2));
    	echo $nb.' serveurs ont été modifié';
    

    $nb affiche toujours 1 alors que il y en a plus de 10 entrées qui ont été modifié



  • Pour la deuxième, c'est normal qu'elle renvoie 1 (en fait TRUE, mais c'est pareil) :

    Valeurs de retour

    Cette fonction retourne TRUE en cas de succès ou FALSE si une erreur survient.

    http://www.php.net/manual/fr/pdostatement.execute.php

    Comme dis le proverbe : RTFM !



  • Merci :) Résolu @Site du zero:

    Tu peux utiliser la méthode rowCount() sur $req pour avoir le nombre de lignes modifiées.


Se connecter pour répondre
 

Il semble que votre connexion ait été perdue, veuillez patienter pendant que nous vous re-connectons.