[SQL/PHP] compter le nombre de champ non vide

Résolu
Nemo -  
 Unknown -
Bonjour,
Je possède une table comme suit :

id nom inter1 inter2 interr3
1 Microsoft jean michel
2 Apple roger

je voudrais une sequence SQL/php qui pourrait me retourner le nombre d'intervenant des différentes entreprises. exemple pour
microsoft->2
apple->1

j'imagine que c'est la fonction count() mais je ne sais pas trop comment l'utiliser.

merci d'avance
Configuration: Windows XP
Safari 530.5

2 réponses

  1. avion-f16 Messages postés 19182 Date d'inscription   Statut Contributeur Dernière intervention   4 511
     
    Rien à voir avec la fonction count().
    Il y a plusieurs méthodes pour faire ça et en voici une :
    <?php
    $sql = 'SELECT * FROM latable ORDER BY nom';
    $req = mysql_query($sql);
    while($entreprise = mysql_fetch_assoc($req)) {
        echo 'Nom de l\'entreprise : '.htmlspecialchars(stripslashes($data['nom'])).'<br/>';
        $nb = 0;
        if(!empty($data['inter1'])) {
            $nb++;
        }
        if(!empty($data['inter2'])) {
            $nb++;
        }
        if(!empty($data['inter3'])) {
            $nb++;
        }
        echo 'Il y a '.$nb.' intervenants.';
    }
    ?>
    0
    1. Iramirim
       
      Bonjour, je profite de votre réponse parce que j'ai le même problème !

      J'ai crée la page php pour afficher le nombre des champs replis pour chaque colonne, mais je n'ai que des " 0 " comme résultat et même le 'nom' ne s'affiche pas ...

      Type :
      Il y a 0 photos. Type :
      Il y a 0 photos. Type :
      Il y a 0 photos. Type :
      . . . .

      et pourtant il y a plus de la moitié des champs qui ont des photos (infos)...

      Ma base a plus de colonnes que les colonnes que j'ai demande de compter, c'est ça le problème ? Je m'explique, j'ai demande qu'il compte que les champs "photoXX" et dans ma table j'ai d'autres champs que le "ID" "nom" et "photoXX"...

      Juste en bas, j'ai copié le code.
      Merci d'avance!

      <?php
      $sql = 'SELECT * FROM photos ORDER BY nom';
      $req = mysql_query($sql);
      while($entreprise = mysql_fetch_assoc($req)) {
      echo ' '.'Type : '.htmlspecialchars(stripslashes($data['nom'])).'<br/>';
      $nb = 0;
      if(!empty($data['photo01'])) {
      $nb++;
      }
      if(!empty($data['photo02'])) {
      $nb++;
      }
      if(!empty($data['photo03'])) {
      $nb++;
      }
      if(!empty($data['photo04'])) {
      $nb++;
      }
      if(!empty($data['photo05'])) {
      $nb++;
      }
      echo 'Il y a '.$nb.' photos.';
      }
      ?>
      0
    2. Unknown
       
      Le tableau est $entreprise, pas $data
      0