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 :

compter le nombre d'un mot dans une table sql [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Membre habitué Avatar de Akramweb
    Homme Profil pro
    Webmaster
    Inscrit en
    Avril 2005
    Messages
    227
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

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

    Informations forums :
    Inscription : Avril 2005
    Messages : 227
    Points : 197
    Points
    197
    Par défaut compter le nombre d'un mot dans une table sql
    Bonjour,
    Voici mon probleme :
    exemple :
    dans une table sql j'ai 2 champs : nom et type.
    par exemple la table contient dans le champ nom gold 2 fois.
    et je compte faire un calcule :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    <?
    $sql="select * from t_societe";
    $result=mysql_query($sql);
     
      while($row=mysql_fetch_array($result)){
      $type_sp="gold";
      for ($i=0;$i<count($type_sp);$i++){
      $i++;
      }}
    ?>
    en fin je compte afficher le nombre total exemple : 2
    Merci

  2. #2
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Points : 16 372
    Points
    16 372
    Par défaut
    D'abord count est une fonction qu'on applique à un tableau. Or toi tu l'appliques à une chaine de caractères. Donc dans le meilleur des cas, tu vas obtenir 1.
    Ensuite, je crois que tu ne maitrises pas bien l'exploitation de résultat d'une requête mysql. A chaque résultat (c'est-à-dire à chaque tour de la boucle) tu as un enregistrement autrement dit une ligne de ta table. Donc tout ce que tu as à faire c'est vérifier si nom est égal à ta valeur et si oui incrémenter le compteur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    $sql="select * from t_societe";
    $result=mysql_query($sql);
    $type_sp="gold";
    $compteur = 0; 
      while($row=mysql_fetch_array($result)){
        if ($row['nom'] == $type_sp) $compteur++;
      }
    echo " il y a $compteur fois le nom $type_sp";

  3. #3
    Membre émérite Avatar de Djakisback
    Profil pro
    Inscrit en
    Février 2005
    Messages
    2 023
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 2 023
    Points : 2 273
    Points
    2 273
    Par défaut
    Tu peux aussi faire ton count en SQL.

  4. #4
    Membre éprouvé Avatar de FCYPBA
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    745
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Novembre 2004
    Messages : 745
    Points : 952
    Points
    952
    Par défaut
    Citation Envoyé par Djakisback Voir le message
    Tu peux aussi faire ton count en SQL.
    Je dirais même plus tu DOIS le faire dans le sql

  5. #5
    Membre averti Avatar de BornBanane
    Homme Profil pro
    dev
    Inscrit en
    Mars 2007
    Messages
    284
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : dev

    Informations forums :
    Inscription : Mars 2007
    Messages : 284
    Points : 416
    Points
    416
    Par défaut
    Un petit
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT count(nom) as Nb , nom from t_societe group by 2
    Va te retourné un tableau avec la colonne "Nb" et la colonne "nom" qui te donnera exactement ce que tu veux (en tout cas pour les noms).

  6. #6
    Membre émérite Avatar de Djakisback
    Profil pro
    Inscrit en
    Février 2005
    Messages
    2 023
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 2 023
    Points : 2 273
    Points
    2 273
    Par défaut
    "Group by 2" ?

    Sinon un petit :

    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT count(nom) AS nb
    FROM t_societe
    WHERE nom = "gold";

  7. #7
    Membre habitué Avatar de Akramweb
    Homme Profil pro
    Webmaster
    Inscrit en
    Avril 2005
    Messages
    227
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

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

    Informations forums :
    Inscription : Avril 2005
    Messages : 227
    Points : 197
    Points
    197
    Par défaut
    Merci a celira ça marche, et merci a tous

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

Discussions similaires

  1. Compter le nombre de même ID dans une table
    Par arngrimur dans le forum Linq
    Réponses: 5
    Dernier message: 19/01/2012, 11h46
  2. compter le nombre de ligne égales dans une table
    Par Bigoodheart dans le forum Langage SQL
    Réponses: 2
    Dernier message: 16/11/2010, 18h08
  3. Compter le nombre de "cases" remplies dans une table
    Par benfel dans le forum Développement de jobs
    Réponses: 17
    Dernier message: 09/03/2010, 14h47
  4. [AC-2000] compter le nombre d'enregistrements selectionner dans une requete sql
    Par charlou74 dans le forum VBA Access
    Réponses: 20
    Dernier message: 04/02/2010, 17h50
  5. nombre d'enregistrements limite dans une table sql
    Par lilou229 dans le forum Outils
    Réponses: 3
    Dernier message: 30/01/2007, 15h21

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