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 :

Mon SELECT COUNT me renvoie toujours 1 [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� Avatar de diaboloche
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    592
    D�tails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2004
    Messages : 592
    Par d�faut Mon SELECT COUNT me renvoie toujours 1
    Bonjour,

    Petit probl�me...quoiqu'il arrive mon Select Count me renvois 1...m�me quand ma table est vide...

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    $nombre=mysql_query("SELECT COUNT(email) FROM profiles WHERE email='$email'") or die ("<h1>erreur insert ".mysql_error()."</h1>");
        $nombre=mysql_num_rows($nombre);
    	print $nombre;
     
    	if($nombre<0) //---Si il n'existe pas, alors on ajoute---//
    	{
    	 mysql_query("INSERT INTO profiles (email) VALUES ('$email') ") or die ("<h1>erreur insert ".mysql_error()."</h1>");
    	 print ("<h1>insertion réalisée !</h1><br>"); //---OK ajout effectué---//
    	}
    	else print ("<h1>Email déjà existant !</h1><br>"); //---Email déjà existant---//
    Si quelqu'un peut m'aider...

  2. #2
    Invit�
    Invit�(e)
    Par d�faut
    peux-tu afficher ta requ�te sur ta page et voir si la condition est bien respect�e?

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    print "SELECT email FROM profiles WHERE email='".$email."'";

  3. #3
    R�dacteur
    Avatar de Arnaud F.
    Homme Profil pro
    D�veloppeur COBOL
    Inscrit en
    Ao�t 2005
    Messages
    5 183
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 38
    Localisation : France

    Informations professionnelles :
    Activit� : D�veloppeur COBOL
    Secteur : Finance

    Informations forums :
    Inscription : Ao�t 2005
    Messages : 5 183
    Par d�faut
    Non je pense qu'il faut enlever les simples quotes, moi j'aurai �cris
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    print "SELECT email FROM profiles WHERE email=$email;
    Au passage,
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    print "SELECT email FROM profiles WHERE email='".$email."'";
    et
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    print "SELECT COUNT(email) FROM profiles WHERE email='$email'"
    sont identiques
    C'est par l'adresse que vaut le b�cheron, bien plus que par la force. Hom�re

    Installation de Code::Blocks sous Debian � partir de Nightly Builds

  4. #4
    Membre Expert Avatar de Amara
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    2 688
    D�tails du profil
    Informations personnelles :
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 688
    Par d�faut
    Buchs => Si tu enl�ves les quotes la requ�te ne marchera pas (car je suppose que le champ mail est une cha�ne de caract�res...).

  5. #5
    R�dacteur
    Avatar de Arnaud F.
    Homme Profil pro
    D�veloppeur COBOL
    Inscrit en
    Ao�t 2005
    Messages
    5 183
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 38
    Localisation : France

    Informations professionnelles :
    Activit� : D�veloppeur COBOL
    Secteur : Finance

    Informations forums :
    Inscription : Ao�t 2005
    Messages : 5 183
    Par d�faut
    Citation Envoy� par JWhite
    Buchs => Si tu enl�ves les quotes la requ�te ne marchera pas (car je suppose que le champ mail est une cha�ne de caract�res...).
    Ben je sais pas, il a pas pr�ciser ou chaine de caractere et si c'est un int, les 2 mani�res de l'�crire fonctionne
    C'est par l'adresse que vaut le b�cheron, bien plus que par la force. Hom�re

    Installation de Code::Blocks sous Debian � partir de Nightly Builds

  6. #6
    Membre tr�s actif
    Homme Profil pro
    Inscrit en
    Avril 2005
    Messages
    614
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 42
    Localisation : Turquie

    Informations forums :
    Inscription : Avril 2005
    Messages : 614
    Par d�faut
    avec une variable qui s'appelle $email on s'imagine bien que c'est une chaine de caract�re

  7. #7
    Membre Expert Avatar de Amara
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    2 688
    D�tails du profil
    Informations personnelles :
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 688
    Par d�faut
    Citation Envoy� par buchs
    Ben je sais pas, il a pas pr�ciser ou chaine de caractere et si c'est un int, les 2 mani�res de l'�crire fonctionne
    Arf oui tu as raison dans ma t�te un mail c'est du texte mais en fait c'est peut-�tre l'id du mail (�a serait plus logique mais le nom du champ est pas tr�s bien choisi alors). Dsl

  8. #8
    Membre tr�s actif
    Homme Profil pro
    Inscrit en
    Avril 2005
    Messages
    614
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 42
    Localisation : Turquie

    Informations forums :
    Inscription : Avril 2005
    Messages : 614
    Par d�faut
    essaie de faire :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    $nombre=mysql_query("SELECT COUNT(email) as nbr_email FROM profiles WHERE email='$email'") or die ("<h1>erreur insert ".mysql_error()."</h1>");
        $nombre=mysql_fetch_object($nombre);
    	//print $nombre;
    	
    	if($nombre->nbr_email==0) //---Si il n'existe pas, alors on ajoute---//
    	{
    	 mysql_query("INSERT INTO profiles (email) VALUES ('$email') ") or die ("<h1>erreur insert ".mysql_error()."</h1>");
    	 print ("<h1>insertion r�alis�e !</h1><br>"); //---OK ajout effectu�---//
    	}
    	else print ("<h1>Email d�j� existant !</h1><br>"); //---Email d�j� existant---//

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. mon formulaire de connexion renvoie toujours faux
    Par jerem070695 dans le forum Langage
    R�ponses: 2
    Dernier message: 23/11/2008, 08h03
  2. requ�te count(*) renvoie toujours 0
    Par expertimeUser dans le forum Langage SQL
    R�ponses: 4
    Dernier message: 30/08/2007, 14h29
  3. COUNT avec LEFT JOIN qui renvoie toujours 1
    Par Christophe_ dans le forum Requ�tes
    R�ponses: 2
    Dernier message: 13/06/2007, 14h20
  4. Plusieurs Count dans mon select
    Par thomfort dans le forum Requ�tes
    R�ponses: 1
    Dernier message: 16/03/2007, 17h39
  5. mon select count(*) marche pas
    Par zorba49 dans le forum Langage SQL
    R�ponses: 14
    Dernier message: 05/08/2005, 08h28

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