IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

Verifier qu'une requete a été correctement executée


Sujet :

PHP & Base de données

  1. #1
    Inactif
    Inscrit en
    Octobre 2008
    Messages
    826
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 826
    Points : 172
    Points
    172
    Par défaut Verifier qu'une requete a été correctement executée
    Bonjours,

    Je souhaiterai, savoir comment verifier qu'une requete PDO return tru ou false, afin que je puisse retourner une condition selon le resiltat.

    Donc voici mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    class inventaire extends mysql {
     
    	public function ajouter($sexe, $categorie, $taille, $quantite, $description, $images) {
    			$dbh = mysql::getInstance();
    			$sql = "INSERT INTO inventaire (id, sexe, categorie, taille, quantite, description, image, date) 
    					VALUES ('', '$sexe', '$categorie', '$taille', '$quantite', '$description', $images, '0')";
    			$result = $dbh->exec($sql);
     
    		}
    }
    Donc j'aimerai verifier si $result = $dbh->exec($sql); a été executé avec succes.


    Merci de m'aider

  2. #2
    Membre expert
    Avatar de ThomasR
    Homme Profil pro
    Directeur technique
    Inscrit en
    Décembre 2007
    Messages
    2 230
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2007
    Messages : 2 230
    Points : 3 972
    Points
    3 972
    Par défaut
    Bonsoir,
    $result contient le nombre de lignes affectées ou FALSE si la requête ne s'est pas exécutée correctement.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    return $result != FALSE; // 0 lines or FALSE

  3. #3
    Inactif
    Inscrit en
    Octobre 2008
    Messages
    826
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 826
    Points : 172
    Points
    172
    Par défaut
    Alors, je viens tester un :

    Mais sa retourne rien, c'est normal ?

  4. #4
    Expert éminent sénior

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    6 152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 6 152
    Points : 17 778
    Points
    17 778
    Par défaut
    C'est que la valeur est FALSE (conversion implicite booléen => chaîne par echo)
    La valeur booléenne FALSE est convertie en "" (une chaîne vide).
    À noter qu'il existe des fonctions plus appropriées en ces circonstances (var_dump).

  5. #5
    Inactif
    Inscrit en
    Octobre 2008
    Messages
    826
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 826
    Points : 172
    Points
    172
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    var_dump($result);
    Sa me retourne : int(1)

  6. #6
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    et ? quel est ton problème ?
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  7. #7
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2009
    Messages
    236
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Octobre 2009
    Messages : 236
    Points : 348
    Points
    348
    Par défaut
    Ton booléen est à "TRUE" si il te retourne 1 ou -1, et à "FALSE" si il te retourne 0.
    Pensez à la balise [CODE].
    Aucune réponse aux questions par MP.

  8. #8
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Ton booléen est à "TRUE" si il te retourne 1 ou -1, et à "FALSE" si il te retourne 0.
    La fonction ne retourne pas -1, elle retourne un entier ou FALSE.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

Discussions similaires

  1. [WD18] Mystère d'une requete et de son execution
    Par GuillaumeJ dans le forum WinDev
    Réponses: 3
    Dernier message: 28/02/2015, 11h23
  2. Comment parser une requete sql sans l'executer
    Par FABFAB125 dans le forum SQL
    Réponses: 2
    Dernier message: 30/11/2007, 17h21
  3. pb d'execution d'une requete sql
    Par pit9.76 dans le forum Bases de données
    Réponses: 2
    Dernier message: 26/06/2004, 12h03
  4. Probleme d'execution d'une requete avec un Count
    Par PrinceMaster77 dans le forum ASP
    Réponses: 4
    Dernier message: 23/06/2004, 10h33
  5. [ADO] Probleme lors de l'execution d'une requete...
    Par NoisetteProd dans le forum Bases de données
    Réponses: 4
    Dernier message: 04/06/2004, 12h43

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo