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 :

rowcount donne une mauvaise valeur [MySQL]


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    sans
    Inscrit en
    Mai 2007
    Messages
    485
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : sans

    Informations forums :
    Inscription : Mai 2007
    Messages : 485
    Par défaut rowcount donne une mauvaise valeur
    Bonjour,

    Je veux compter le nombre d'enregistrements de ma table répondant à ma condition ET pour lesquels le contenu d'une colonne donné doit être non nul:

    Si je fais ceci, le nombre obtenu n'est pas le bon. Je pense que c'est dû au fait que ma variable n'est pas interprétée.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    $sql = 'SELECT * FROM ma_table WHERE ('   ."$id_Item".   ' = '.  $_SESSION["id_Item"].   ' AND '. $id_Item.' !=0) ';
    $resultat = $pdo->prepare($sql);
    $resultat->execute();
    $nb_hits_non_nuls = $resultat->rowCount();
    Si je modifie ainsi, j'obtiens une erreur Uncaught exception 'PDOException' with message 'SQLSTATE[42000]: Syntax error or access violation: 1064 Erreur de syntaxe.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    $sql ="SELECT * FROM 'coursinfo_membres_cours' WHERE (`$id_Item` = ".$_SESSION['id_Item']." AND $id_Item !=0) ";
    $resultat = $pdo->prepare($sql);
    $resultat->execute();
    $nb_hits_non_nuls = $resultat->rowCount();
    Je vous remercie de bien vouloir m'aiguiller.

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    200
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 200
    Par défaut
    Sauf erreur de ma part il faut d'abord faire un fetch pour pouvoir compter le nombre de ligne. (je ne suis pas sur)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    $resultat->execute();
    $resultat->fetch(PDO::FETCH_ASSOC);
    $nb_hits_non_nuls = $resultat->rowCount();

  3. #3
    Membre éclairé
    Homme Profil pro
    sans
    Inscrit en
    Mai 2007
    Messages
    485
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : sans

    Informations forums :
    Inscription : Mai 2007
    Messages : 485
    Par défaut
    Bonjour tyjez,

    Merci pour ton intervention mais ça ne change rien.

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    200
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 200
    Par défaut
    es-tu certain du fonctionnement de ta requête ?
    j'aurai plutot fait
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $sql ="SELECT * FROM 'coursinfo_membres_cours' WHERE (".$id_Item." = ".$_SESSION['id_Item']." AND ".$id_Item." !=0) ";

  5. #5
    Membre éclairé
    Homme Profil pro
    sans
    Inscrit en
    Mai 2007
    Messages
    485
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : sans

    Informations forums :
    Inscription : Mai 2007
    Messages : 485
    Par défaut
    Non, je suis pas sûr de ma requête.

    Avec ta proposition, j'obtiens la même erreur
    Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[42000]: Syntax error or access violation: 1064 Erreur de syntaxe près de ''ma_table' WHERE (2001 = 2001 AND 2001 !=0)' à la ligne 1'

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    200
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 200
    Par défaut
    et comme ca ?
    c'est bizzare comme requete quand meme. tu as des noms de champs de ta table qui correspondent aux données qu'ils contiennent ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $sql ="SELECT * FROM coursinfo_membres_cours WHERE (".$id_Item." = ".$_SESSION['id_Item']." AND ".$id_Item." !=0) ";
    Citation Envoyé par Denis Placé Voir le message
    Non, je suis pas sûr de ma requête.

    Avec ta proposition, j'obtiens la même erreur

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 22
    Dernier message: 23/02/2012, 16h11
  2. j'ai donné une mauvaise impression
    Par svenstek dans le forum Entretien
    Réponses: 7
    Dernier message: 09/06/2011, 14h24
  3. [XL-2000] Fonction RECHERCHEV renvoie une mauvaise valeur
    Par kstorfou dans le forum Excel
    Réponses: 3
    Dernier message: 21/12/2009, 09h30
  4. Réponses: 2
    Dernier message: 12/01/2009, 11h27
  5. Réponses: 8
    Dernier message: 17/07/2007, 11h33

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