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 :

Gérer les résultats vides dans un tableau php


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    1 019
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 1 019
    Par défaut Gérer les résultats vides dans un tableau php
    Bonjour à tous,

    J'ai mis en place une liste déroulante et crée un tableau pour afficher le résultat en fonction du choix de la liste déroulante.

    Lorsque j'ai un résultat, il s'affiche bien dans le tableau.

    Mais j'aimerais gérer le cas où il n'y a pas de résultat. On clique sur la liste déroulante, on fais un choix et là dans le tableau rien ne s'affiche.

    Quelqu'un peux m'aider, svp ? Merci

  2. #2
    Membre Expert
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    721
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2006
    Messages : 721
    Par défaut
    Pourquoi ne pas montrer le code pour que ce soit plus concret ? Et dans le cas où il n'y a pas de résultat ben il faut que vous décidiez de ce qui doit se passer et à ce moment-là on verra comment traduire cela en code. Dans l'absolu votre demande est floue, ce serait bien de voir du code et même des exemples de valeurs que vous récupérez de votre liste déroulante.

  3. #3
    Membre éprouvé
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    1 019
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 1 019
    Par défaut Gérer les résultats vides dans un tableau php
    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
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    <?php
     
                                                                                                                                                                            if(isset($_GET['ok']) && isset($_GET['str']) && $_GET['str'] != "")
     
                                                                                                                                                                                    {
     
     
     
                                                                                                                                                                                            $sql = "SELECT * FROM document WHERE etab='".$_GET['str']."' ";
     
     
     
                                                                                                                                                                                            $rep = mysql_query("$sql") ;
     
     
                                                                                                                                                                                                $num=1;
     
                                                                                                                                                                                                    while($data3 = mysql_fetch_array($rep))
     
                                                                                                                                                                                                         {
     
                                                                                                                                                                                                             $num++;
                                                                                                                                                                                                                             // Utiliser Modulo 2 afin de vérifier si le $num est égal à 0.
     
                                                                                                                                                                                                                         if(($num%2)!=0)
                                                                                                                                                                                                                         {
                                                                                                                                                                                                                            $bg="#dddddd";
     
                                                                                                                                                                                                                         }
     
                                                                                                                                                                                                                         else
     
                                                                                                                                                                                                                         {
                                                                                                                                                                                                                            $bg="#cecece";
     
                                                                                                                                                                                                                         }
     
     
                                                                                                                                                                                                        ?>
     
     
     
                                                                                                                                                                                                                <table width="90%" align="center" border="0" bgcolor="#dddddd">
     
     
                                                                                                                                                                                                                     <tr bgcolor="<?php echo $bg ?>" align="center">
     
     
                                                                                                                                                                                                                     <td  width="12%"><a href="<?php echo htmlentities(trim($data3['chemin_doc'])); ?>" title="Document à télécharger" target="_blank"><font color="grey" size="2"><strong><?php echo $data3['nom']; ?></a></strong></font></td>
                                                                                                                                                                                                                     <td  width="20%"><a href="<?php echo htmlentities(trim($data3['chemin_doc'])); ?>" title="Document à télécharger" target="_blank"><font color="grey" size="2"><strong><?php echo $data3['objet']; ?></a></strong></font></td>
                                                                                                                                                                                                                     <td  width="10%"><a href="<?php echo htmlentities(trim($data3['chemin_doc'])); ?>" title="Document à télécharger" target="_blank"><font color="grey" size="2"><strong><?php echo $data3['categorie']; ?></a></strong></font></td>
                                                                                                                                                                                                                     <td  width="20%"><a href="<?php echo htmlentities(trim($data3['chemin_doc'])); ?>" title="Document à télécharger" target="_blank"><font color="grey" size="2"><strong><?php echo $data3['etablissement']; ?></a></strong></font></td>
                                                                                                                                                                                                                     <td  width="8%"><a href="<?php echo htmlentities(trim($data3['chemin_doc'])); ?>" title="Document à télécharger" target="_blank"><font color="grey" size="2"><strong><?php echo date("d/m/Y", strtotime($data3['date_doc']));?></a></strong></font></td>
     
     
                                                                                                                                                                                                                     </tr>
     
     
                                                                                                                                                                                                                 </table>
     
     
     
                                                                                                                                                                            <?php
     
                                                                                                                                                                                                        }
     
     
     
     
                                                                                                                                                                                    }
     
                                                                                                                                                                                    Else
     
                                                                                                                                                                                    {
     
                                                                                                                                                                                    ?>
     
     
                                                                                                                                                                                        <table width="90%" align="center" border="0" bgcolor="#dddddd">
     
     
                                                                                                                                                                                                        <tr bgcolor="<?php echo $bg ?>" align="center">
     
     
                                                                                                                                                                                                        <td  width="12%"><font color="grey" size="2"><strong><?php echo "Aucun" ?></a></strong></font></td>
                                                                                                                                                                                                        <td  width="20%"><font color="grey" size="2"><strong><?php echo "Aucun" ?></a></strong></font></td>
                                                                                                                                                                                                        <td  width="10%"><font color="grey" size="2"><strong><?php echo "Aucun" ?></a></strong></font></td>
                                                                                                                                                                                                        <td  width="20%"><font color="grey" size="2"><strong><?php echo "Aucun" ?></a></strong></font></td>
                                                                                                                                                                                                         <td  width="8%"><font color="grey" size="2"><strong><?php echo "Aucun"?></a></strong></font></td>
     
     
                                                                                                                                                                                                             </tr>
     
     
                                                                                                                                                                                      </table>
     
     
                                                                                                                                                                                    <?php
     
     
                                                                                                                                                                                    }
     
     
     
                                                                                                                                                                            ?>

  4. #4
    Expert confirmé
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 322
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 322
    Billets dans le blog
    17
    Par défaut
    Le script est illisible. Tu aurais pu faire quelques efforts de formatage.

    Je suppose que ça se joue ici :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    $sql = "SELECT * FROM document WHERE etab='".$_GET['str']."' ";
    $rep = mysql_query("$sql") ;
    $num=1;
    while($data3 = mysql_fetch_array($rep))
    Juste avant le while tu peux utiliser mysql_num_rows() pour connaître le nombre de lignes du résultat et agir en conséquence.

    Attention, l'API mysql historique est obsolète depuis PHP 5.5 (2013) et supprimée depuis PHP 7.0 (2015), il serait temps d'évoluer vers PDO (et de redonner un petit coup de jeune à ton script )

  5. #5
    Membre Expert
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    721
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2006
    Messages : 721
    Par défaut
    En plus on a tous les ingrédients d'une injection SQL, bref comment se faire hacker par le premier script kiddie venu tellement la faille est facile à exploiter. Au risque d'être un peu directe, je pense qu'il faudrait jeter ce code à la poubelle et tout reprendre en se basant sur des tutos un peu plus récents.
    En plus travailler avec des tableaux pour structurer les pages, et du formatage inline ça ne se fait plus trop, le CSS est assez évolué aujourd'hui et il y a des frameworks comme Bootstrap qui facilitent le travail.
    Ça n'a aucun sens de produire du code vieux de 20 ans, surtout quand c'est la voie royale pour se faire hacker.

  6. #6
    Membre éprouvé
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    1 019
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 1 019
    Par défaut Gérer les résultats vides dans un tableau php
    Oui c'est prévu de tous refaire mais le site est en ligne pendant quelques mois encore. Merci pour les informations.



    Citation Envoyé par binarygirl Voir le message
    En plus on a tous les ingrédients d'une injection SQL, bref comment se faire hacker par le premier script kiddie venu tellement la faille est facile à exploiter. Au risque d'être un peu directe, je pense qu'il faudrait jeter ce code à la poubelle et tout reprendre en se basant sur des tutos un peu plus récents.
    En plus travailler avec des tableaux pour structurer les pages, et du formatage inline ça ne se fait plus trop, le CSS est assez évolué aujourd'hui et il y a des frameworks comme Bootstrap qui facilitent le travail.
    Ça n'a aucun sens de produire du code vieux de 20 ans, surtout quand c'est la voie royale pour se faire hacker.

  7. #7
    Membre éprouvé
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    1 019
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 1 019
    Par défaut Gérer les résultats vides dans un tableau php
    Merci pour votre réponse.

Discussions similaires

  1. Réponses: 2
    Dernier message: 12/04/2014, 21h45
  2. Réponses: 15
    Dernier message: 11/05/2007, 15h28
  3. Réponses: 8
    Dernier message: 30/11/2006, 18h32
  4. [Conception] Afficher les données (BDD) dans un tableau en PHP
    Par ox@na dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 04/09/2006, 15h24
  5. Réponses: 1
    Dernier message: 01/05/2006, 11h17

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