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 :

Affichage de données dans tableau


Sujet :

PHP & Base de données

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2012
    Messages
    31
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Décembre 2012
    Messages : 31
    Points : 30
    Points
    30
    Par défaut Affichage de données dans tableau
    Bonjour à tous,

    Je rencontre un problème d'affichage dans un tableau.

    Lorsque mes requêtes renvoie un résultat cela fonctionne très bien et j'obtiens un affichage de ceux-ci dans mon tableau.
    Mais lorsque le résultat 'null' (cad pas d’occurrence) pour au moins une des 3 requêtes alors je n'obtiens aucun affichage même pour les requêtes qui retournent un résultat 'non null'.

    Comment puis-je faire pour obtenir la valeur '0' pour un résultat 'null' et pour afficher par ailleurs les résultats 'non null' des autres requêtes.

    Je ne sais pas si je me fais bien comprendre car je suis novice dans le développement, dsl

    Ci-dessous mon code.

    Merci d'avance à tout le monde.


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    echo '<br>Visites par nom de domaine<br><br>'; 
     
     
    $bdd = pg_query($base, "SELECT  domaine, count(domaine) as nb_mail, count(volet) as nb_page
    	FROM statistique WHERE volet='bdd' and domaine='audeso.org' and to_char(date, 'YYYY-MM') = '".$date_mois."' GROUP BY domaine, volet  "); 
    $carto = pg_query($base, "SELECT  domaine, count(domaine) as nb_mail, count(volet) as nb_page
    	FROM statistique WHERE volet='carto' and domaine='audeso.org' and to_char(date, 'YYYY-MM') = '".$date_mois."' GROUP BY domaine, volet");
    $obs = pg_query($base, "SELECT  domaine, count(domaine) as nb_mail, count(volet) as nb_page
    	FROM statistique WHERE volet='obs' and domaine='audeso.org' and to_char(date, 'YYYY-MM') = '".$date_mois."' GROUP BY domaine, volet");
     
    echo "<TABLE width='100%'>";
    		  echo " <tr >
    				 <td class='sup'><h2></h2></td>
    				 <td width='20%' bgcolor='gainsboro' align='center'><h2>Bases de données</h2></td>
    				 <td width='20%' bgcolor='gainsboro' align='center'><h2>Portail carto</h2></td>
    				 <td width='20%' bgcolor='gainsboro' align='center'><h2>Observatoires</h2></td>
    			 </tr>";
     
    while ($data = pg_fetch_assoc($bdd) and $data1= pg_fetch_assoc($carto) and $data2= pg_fetch_assoc($obs)) { 
    	   echo "<tr>
    			 <td bgcolor='gainsboro' align='center'><h2>".$data["domaine"]."</h2></td>
    			 <td align='right' width='20%'><h2>".$data["nb_page"]."</h2></td>
    			 <td align='right' width='20%'><h2>".$data1["nb_page"]."</h2></td>
    			 <td align='right' width='20%'><h2>".$data2["nb_page"]."</h2></td>
    			 </tr>";
    }
     
    echo "</TABLE>";

  2. #2
    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
    Il ne faut pas 3 requêtes : classe tes resultat dans un tableau PHP par domaine et par volet :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    $bdd = pg_query($base, "SELECT  domaine, volet, count(domaine) as nb_mail, count(volet) as nb_page
    	FROM statistique WHERE volet IN ('bdd', 'carto', 'obs') and domaine='audeso.org' and to_char(date, 'YYYY-MM') = '".$date_mois."' GROUP BY domaine, volet  ");
    while ($row= pg_fetch_assoc($bdd)) {
       $data[$row['domaine']][$row['volet']] = $row;
    }
     
    $arVolet = array('bdd', 'carto', 'obs');
     
    foreach ($data as $domaine=>$values) {
        echo '<tr>';
        foreach($arVolet as $volet) {
            $affiche = isset($values[$volet]) ? $values[$volet] : array('nb_mail'=>'', 'nb_page'=>'');
            echo '<td>' . $domaine . '</td><td>' . $affiche['nb_mail'] . </td><td>' . $affiche['nb_page'] . </td>';
        echo '</tr>';
    }
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2012
    Messages
    31
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Décembre 2012
    Messages : 31
    Points : 30
    Points
    30
    Par défaut
    Merci Sabotage,

    Je vais essayer de réaliser ça et je te fais un retour.

    Bonne continuation.

  4. #4
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2012
    Messages
    31
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Décembre 2012
    Messages : 31
    Points : 30
    Points
    30
    Par défaut
    Bonjour,

    La requête fonctionne très bien dans PostGres, mais je n'ai aucun affichage dans les colonnes volets.
    Par ailleurs les infos sur les domaines sont triplées à chaque fois.

    J'avoue ne pas assez maîtriser pour comprendre ce qu'il se passe ...

    Merci.

Discussions similaires

  1. Affichage de données dans un tableau
    Par Claire07 dans le forum ASP.NET
    Réponses: 4
    Dernier message: 23/03/2007, 15h48
  2. [Tableaux] affichage des données dans un tableau
    Par bilane dans le forum Langage
    Réponses: 1
    Dernier message: 21/03/2007, 18h31
  3. Réponses: 6
    Dernier message: 17/07/2006, 16h07
  4. [SQL-Server] Pb affichage données dans tableau
    Par steve o'steen dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 14/03/2006, 10h29
  5. Réponses: 3
    Dernier message: 11/01/2006, 18h44

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