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

Langage PHP Discussion :

Sortir un listing des adhérents par activités professionnels


Sujet :

Langage PHP

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Photographe
    Inscrit en
    Mars 2014
    Messages
    25
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Photographe
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Mars 2014
    Messages : 25
    Points : 9
    Points
    9
    Par défaut Sortir un listing des adhérents par activités professionnels
    Bonjour,

    J'ai écris ce code qui fonctionne très bien sauf une chose, il ne met en tableau qu'un enregistrement par activité.
    Si dans ma base de données j'ai plusieurs personnes dans la même activité, cela n'en inscrit qu'une.
    Comment puis-je rectifier le code pour qu'il me sorte toutes les personnes dans la même activité sans pour autant redire cette activité ?

    Ex: Maçon : Jean CLAUDE - Maçon : Pierre RICHARD - Couvreur : Luis TUILE

    Avoir :

    Maçon : Jean CLAUDE
    Pierre RICHARD

    Couvreur : Luis TUILE



    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
     
    {source}
    <html>
    <head>
    <title>database</title>
    </head>
    <body>
    <ul>
    <br>
     
     
    <?php
    // connexion a la BD
    // Paramètres persos
    $host = "localhost"; // voir hébergeur
    $user = "user"; // identifiant de votre BD
    $pass = "motdepasse"; // mot de passe de votre BD
    $bdd = "basededonnées"; // nom de la BD
    // --------------------------------
    // connexion
    @mysql_connect($host,$user,$pass) or die("Impossible de se connecter");
    @mysql_select_db("$bdd") or die("Impossible de se connecter");
    // --------------------------------
     
     
    // SQL query
    $strSQL = "SELECT * FROM tja_users WHERE cotisation =1 ORDER BY activite ASC ";
     
    // Exécuter la requête ( les enregistrements $rs contient le résultat )
    $rs = mysql_query($strSQL);
     
    // Boucle d'enregistrements $rs
    while($row = mysql_fetch_array($rs)) {
     
    // Liste
    ?>
    <table>
    <tr style="border:0px solid #000000"> 
     
    <td style="border:0px solid #000000" bgcolor="#e6e6e6" width="680">
    <?php
    echo ''.$row['activite'].'';
    ?>
    </td>
    </tr>
    </table>
    <table>
    <tr style="border:0px solid #000000" align="center"> 
    <td width="200" style="border:0px solid #000000">
    <?php
    echo ''.$row['social'].'';
    ?>
    </td> 
    <td width="200" style="border:0px solid #000000">
    <?php
    echo ''.$row['name'].'';
    ?>
    </td>
    </tr>
    <tr style="border:0px solid #000000" align="center"> 
    <td width="200" style="border:0px solid #000000">
    <?php
    echo ''.$row['vide'].'';
    ?>
    </td>
    <td width="200" style="border:0px solid #000000">
    <?php
    echo ''.$row['adresse'].'';
    ?>
    </td>
    <td width="200" style="border:0px solid #000000">
    <?php
    echo ''.$row['portable'].'';
    ?>
    </td>
    <td width="200" style="border:0px solid #000000">
    <?php
    echo ''.$row['telephone'].'<br>';
    ?>
    </td>
    </tr>
    </table>
    <?php
    }
     
    // Fermeture connexion
    mysql_close();
    ?>
     
     
     
    </ul>
    </body>
    </html>
    {/source}
    Merci

  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
    tu nous as fait un sacré tableau HTML
    Et puis ''.$row['social'].'' à quoi servent les '' ici ?

    Ci-dessous un exemple dans un tableau en ligne (un tableau HTML est fait pour contenir des données organisées, sinon on passe par d'autres types de structures), avec affichage de l'activité seulement lorsqu'elle change.
    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
     
    <table>
    <?php
    $cur_activite = '';
    while($row = mysql_fetch_array($rs)) {
        if ($row['activite'] != $cur_activite) {
             $show_activite = htmlspecialschars($row['activite']);
             $cur_activite = $row['activite'];
        }
        else {
             $show_activite = '';
        }
        ?>
        <tr style="border:0px solid #000000">
            <td style="border:0px solid #000000" bgcolor="#e6e6e6"><?php $show_activite; ?></td>
            <td style="border:0px solid #000000"><?php echo htmlspecialschars($row['social']); ?></td>
            <td style="border:0px solid #000000"><?php echo htmlspecialschars($row['name']); ?></td>
            <td style="border:0px solid #000000"><?php echo htmlspecialschars($row['adresse']); ?></td>
            <td style="border:0px solid #000000"><?php echo htmlspecialschars($row['telephone']); ?></td>
        </tr>
       <?php
       }
    ?>
    </table>

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Photographe
    Inscrit en
    Mars 2014
    Messages
    25
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Photographe
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Mars 2014
    Messages : 25
    Points : 9
    Points
    9
    Par défaut
    Merci de ta réponse, je vais regarder cela

  4. #4
    Futur Membre du Club
    Homme Profil pro
    Photographe
    Inscrit en
    Mars 2014
    Messages
    25
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Photographe
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Mars 2014
    Messages : 25
    Points : 9
    Points
    9
    Par défaut
    J'ai incorporé ton code dans le mien entre mes balises TABLE en lieu et place.
    Mais blocage page blanche

  5. #5
    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
    J'ai peut être fait une faute, regarde tes logs d'erreur.

  6. #6
    Futur Membre du Club
    Homme Profil pro
    Photographe
    Inscrit en
    Mars 2014
    Messages
    25
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Photographe
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Mars 2014
    Messages : 25
    Points : 9
    Points
    9
    Par défaut
    Je te met le code avec la partie que tu as écrites,
    Il doit y avoir une erreur quelque part ...

    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
     
    <?php
    // connexion a la BD
    // Paramètres persos
    $host = "localhost"; // voir hébergeur
    $user = "#######"; // identifiant de votre BD (vide ou "root" en local)
    $pass = "######"; // mot de passe de votre BD (vide en local)
    $bdd = "ucap_asso"; // nom de la BD
    // --------------------------------
    // connexion
    @mysql_connect($host,$user,$pass) or die("Impossible de se connecter");
    @mysql_select_db("$bdd") or die("Impossible de se connecter");
    // --------------------------------
     
     
    // SQL query
    $strSQL = "SELECT * FROM tja_users WHERE cotisation =1 ORDER BY activite ASC ";
     
    // Exécuter la requête ( les enregistrements $rs contient le résultat )
    $rs = mysql_query($strSQL);
     
    ?>
     
    <table>
    <?php
    $cur_activite = '';
    while($row = mysql_fetch_array($rs)) {
        if ($row['activite'] != $cur_activite) {
        	 $show_activite = htmlspecialschars($row['activite']);
        	 $cur_activite = $row['activite'];
        }
        else {
        	 $show_activite = '';
        }
        ?>
        <tr style="border:0px solid #000000">
        	<td style="border:0px solid #000000" bgcolor="#e6e6e6"><?php $show_activite; ?></td>
        	<td style="border:0px solid #000000"><?php echo htmlspecialschars($row['social']); ?></td>
        	<td style="border:0px solid #000000"><?php echo htmlspecialschars($row['name']); ?></td>
        	<td style="border:0px solid #000000"><?php echo htmlspecialschars($row['adresse']); ?></td>
        	<td style="border:0px solid #000000"><?php echo htmlspecialschars($row['telephone']); ?></td>
        </tr>
        <?php
        }
    ?>
    </table>
     
    <?php 
    // Fermeture connexion
    mysql_close();
    ?>

  7. #7
    Modérateur
    Avatar de Kreepz
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2011
    Messages
    681
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Distribution

    Informations forums :
    Inscription : Juin 2011
    Messages : 681
    Points : 1 458
    Points
    1 458
    Billets dans le blog
    1
    Par défaut
    Bonjour,

    As-tu vérifié les logs d'erreur comme te l'as indiqué sabotage?

  8. #8
    Futur Membre du Club
    Homme Profil pro
    Photographe
    Inscrit en
    Mars 2014
    Messages
    25
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Photographe
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Mars 2014
    Messages : 25
    Points : 9
    Points
    9
    Par défaut
    Justement, je n'ai rien ... Juste un blocage sur une page blanche

  9. #9
    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
    Enlève tes @ pour commencer.
    Utilise mysql_fetch_assoc au lieu de mysql_fetch_array.

  10. #10
    Futur Membre du Club
    Homme Profil pro
    Photographe
    Inscrit en
    Mars 2014
    Messages
    25
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Photographe
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Mars 2014
    Messages : 25
    Points : 9
    Points
    9
    Par défaut
    Toujours pareil ...

  11. #11
    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
    Dans la source HTML tu n'as rien du tout ?
    Si tu mets un echo au début il apparait ?

  12. #12
    Futur Membre du Club
    Homme Profil pro
    Photographe
    Inscrit en
    Mars 2014
    Messages
    25
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Photographe
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Mars 2014
    Messages : 25
    Points : 9
    Points
    9
    Par défaut
    Je vois quand je met un echo

    Il me semble que c'est le traitement du "WHILE"

  13. #13
    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
    Tu n'as pas repondu à la première question.

    ajoute

  14. #14
    Futur Membre du Club
    Homme Profil pro
    Photographe
    Inscrit en
    Mars 2014
    Messages
    25
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Photographe
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Mars 2014
    Messages : 25
    Points : 9
    Points
    9
    Par défaut
    J'ai parsemé mon fichier de "echo" voir ci-dessous et cela ne me dis rien voir ce lien => http://asso-ucap.fr/listing_adherents.php

    Le code

    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
     
    <?php
     
    echo 'bonjour 1 - ';
     
     
    // connexion a la BD
    // Paramètres persos
    $host = "localhost"; // voir hébergeur
    $user = "aaaaaa"; // identifiant de votre BD (vide ou "root" en local)
    $pass = "bbbbbb"; // mot de passe de votre BD (vide en local)
    $bdd = "cccccc"; // nom de la BD
    // --------------------------------
    // connexion
    mysql_connect($host,$user,$pass) or die("Impossible de se connecter");
    mysql_select_db("$bdd") or die("Impossible de se connecter");
    // --------------------------------
     
    echo mysql_error(); 
    echo 'bonjour 2 - ';
     
     
    // SQL query
    $strSQL = "SELECT * FROM tja_users WHERE cotisation =1 ORDER BY activite ASC ";
     
    // Exécuter la requête ( les enregistrements $rs contient le résultat )
    $rs = mysql_query($strSQL);
     
    echo mysql_error(); 
    echo 'bonjour 3 - ';
     
    ?>
     
    <table>
     <?php
    $cur_activite = '';
     while($row = mysql_fetch_assoc($rs)) {
        if ($row['activite'] != $cur_activite) {
        	 $show_activite = htmlspecialschars($row['activite']);
        	 $cur_activite = $row['activite'];
        }
        else {
        	 $show_activite = '';
        }
        ?>
        <tr style="border:1px solid #000000">
        	<td style="border:1px solid #000000" bgcolor="#e6e6e6"><?php $show_activite; ?></td>
        	<td style="border:1px solid #000000"><?php echo htmlspecialschars($row['social']); ?></td>
        	<td style="border:1px solid #000000"><?php echo htmlspecialschars($row['name']); ?></td>
        	<td style="border:1px solid #000000"><?php echo htmlspecialschars($row['adresse']); ?></td>
        	<td style="border:1px solid #000000"><?php echo htmlspecialschars($row['telephone']); ?></td>
        </tr>
        <?php
     }
     
    echo mysql_error();
    echo 'bonjour 4 - ';
     
     
    ?>
    </table>
     
    <?php 
     
    echo mysql_error();
    echo 'bonjour 5 - ';
     
     
    // Fermeture connexion
    mysql_close();
    ?>

  15. #15
    Modérateur
    Avatar de Kreepz
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2011
    Messages
    681
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Distribution

    Informations forums :
    Inscription : Juin 2011
    Messages : 681
    Points : 1 458
    Points
    1 458
    Billets dans le blog
    1
    Par défaut
    Ce qui est bizarre c'est que tu as le début et la fin de ton tableau mais pas le "bonjour -4 "
    Es-tu sûr que la requête te renvoie bien quelque chose?

  16. #16
    Futur Membre du Club
    Homme Profil pro
    Photographe
    Inscrit en
    Mars 2014
    Messages
    25
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Photographe
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Mars 2014
    Messages : 25
    Points : 9
    Points
    9
    Par défaut
    Kreepz,

    Si je me fis à la structure de départ de mon code (voir au début du post ) la requête fonctionne.

  17. #17
    Modérateur
    Avatar de Kreepz
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2011
    Messages
    681
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Distribution

    Informations forums :
    Inscription : Juin 2011
    Messages : 681
    Points : 1 458
    Points
    1 458
    Billets dans le blog
    1
    Par défaut
    Pourrais tu faire un var_dump($rs) avant ton while?

  18. #18
    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
    htmlspecialschars => htmlspecialchars

    Il faudra quand même que tu configures ton serveur pour qu'il affiche ou log les erreurs, sinon tu n'arriveras jamais a developper

  19. #19
    Futur Membre du Club
    Homme Profil pro
    Photographe
    Inscrit en
    Mars 2014
    Messages
    25
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Photographe
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Mars 2014
    Messages : 25
    Points : 9
    Points
    9
    Par défaut
    Kreppz => resource(3) of type (mysql result)

    sabotage => htmlspecialchars : Ne change rien sauf apparition cube de tableau
    Je vais regarder pour configurer le serveur pour les erreurs, en espérant trouver comment faire

  20. #20
    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
    Tu l'as corrigé partout ?

    Tu peux ajouter
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    error_reporting(E_ALL);
    au début

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. Liste des propriétés par saisie semi-automatique
    Par ceuce dans le forum VBA Access
    Réponses: 4
    Dernier message: 03/12/2008, 14h58
  2. SNMP: afficher directement la liste des MAC par port
    Par muski dans le forum Développement
    Réponses: 2
    Dernier message: 27/06/2006, 21h55
  3. liste des tables par base
    Par rupert dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 03/05/2004, 10h38

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