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 :

interprétation de résultats


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de Angelik
    Profil pro
    Inscrit en
    Août 2006
    Messages
    253
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 253
    Par défaut interprétation de résultats
    Bonjour tout le monde !

    J'ai mis en place un petit sondage et j'aimerais interprêter les résultats en fonction de l'age ( -18, 18-30a, 30-50a, +50 )

    Le code ci dessus est opérationnel (si je puis dire ) mais j'aimerais réduire les lignes pour arriver au même résultat...

    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
     
    <?php
     
    include ("configuration.php");
     
    $query = mysql_query("SELECT * FROM $sondage WHERE age <= 18");
    $row = mysql_fetch_row($query);
     
    echo "<a href=\"resultat01.php?age=$row[1]\"><b>-18</b></a>";
    echo '<br>';
     
    $query = mysql_query("SELECT * FROM $sondage WHERE age BETWEEN 18 AND 30");
    $row = mysql_fetch_row($query);
     
    echo "<a href=\"resultat01.php?age=$row[1]\"><b>18-30</b></a>";
    echo '<br>';
     
    $query = mysql_query("SELECT * FROM $sondage WHERE age BETWEEN 30 AND 50");
    $row = mysql_fetch_row($query);
     
    echo "<a href=\"resultat01.php?age=$row[1]\"><b>18-30</b></a>";
    echo '<br>';
     
    $query = mysql_query("SELECT * FROM $sondage WHERE age >= 50");
    $row = mysql_fetch_row($query);
     
    echo "<a href=\"resultat01.php?age=$row[1]\"><b>18-30</b></a>";
    echo '<br>';
    ?>
    Voilà, merci d'avance pour le tit coup de main

  2. #2
    Membre Expert

    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    1 278
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Janvier 2005
    Messages : 1 278
    Par défaut
    A priori, tu as une erreur. Tes bornes sont incluses dans deux classes.
    Exemple : 30 ans est compté à la fois dans [18-30] et dans [30-50].
    Il faudrait que tu fasses par exemple : [18-30[ et [30-50[, soit :

    ... BETWEEN 18 AND 29
    ... BETWEEN 30 AND 49

    Sinon, pour ta question, tu peux utiliser COUNT et GROUP BY

  3. #3
    Membre éclairé Avatar de Angelik
    Profil pro
    Inscrit en
    Août 2006
    Messages
    253
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 253
    Par défaut
    Si j'ai bien compris, je peux organiser ma requête de cette façon :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    $query = mysql_query("SELECT count(*) FROM $sondage WHERE age <= 18 AND (age BETWEEN 18 AND 29) AND (age BETWEEN 30 AND 49) AND (age >= 50) GROUP BY age");
    $row = mysql_fetch_row($query);
     
    echo "<a href=\"resultat01.php?age=$row[1]\"><b>-18</b></a>";
    echo '<br>';
    echo "<a href=\"resultat01.php?age=$row[1]\"><b>18-30</b></a>";
    echo '<br>';
    echo "<a href=\"resultat01.php?age=$row[1]\"><b>30-50</b></a>";
    echo '<br>';
    echo "<a href=\"resultat01.php?age=$row[1]\"><b>+50</b></a>";
    echo '<br>';
    Mais de cette façon comment distinguer les liens ci-dessus où -18a,18-30a,30-50a,+50a) renvoient à la même adresse resultat01.php?age=$row[1]

    Merci d'avance

  4. #4
    Inactif  
    Avatar de Kerod
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    11 672
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 11 672
    Par défaut
    Tu cherches en gros à faire une pagination en focntion de l'age (question un peu lourde mais c'est pour bien comprendre la demande )

  5. #5
    Membre éclairé Avatar de Angelik
    Profil pro
    Inscrit en
    Août 2006
    Messages
    253
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 253
    Par défaut
    En fait j'aimerais interpréter les résultats d'un questionnaire en fonction de l'âge dont voici ma requête principale si je puis dire.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $result = mysql_query("SELECT * FROM $sondage WHERE age='$age'");
        $num_rows = mysql_num_rows($result);
    Pour ce faire, j'utilise ce code pour remplacer $age

    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
     
    <?php
     
    include ("configuration.php");
     
    $query = mysql_query("SELECT * FROM $sondage WHERE age <= 18");
    $row = mysql_fetch_row($query);
     
    echo "<a href=\"resultat01.php?age=$row[1]\"><b>-18</b></a>";
    echo '<br>';
     
    $query = mysql_query("SELECT * FROM $sondage WHERE age BETWEEN 18 AND 30");
    $row = mysql_fetch_row($query);
     
    echo "<a href=\"resultat01.php?age=$row[1]\"><b>18-30</b></a>";
    echo '<br>';
     
    $query = mysql_query("SELECT * FROM $sondage WHERE age BETWEEN 30 AND 50");
    $row = mysql_fetch_row($query);
     
    echo "<a href=\"resultat01.php?age=$row[1]\"><b>18-30</b></a>";
    echo '<br>';
     
    $query = mysql_query("SELECT * FROM $sondage WHERE age >= 50");
    $row = mysql_fetch_row($query);
     
    echo "<a href=\"resultat01.php?age=$row[1]\"><b>18-30</b></a>";
    echo '<br>';
    ?>
    où $row[1] est égal à ma colonne âge

    Ce code marche mais me paraît assez lourd et je pense que je peux le réduire et le simplifier ?

    Voilà

  6. #6
    Inactif  
    Avatar de Kerod
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    11 672
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 11 672
    Par défaut
    D'où ma question : Réduire comment ? Pagination en fonction de l'age ?

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

Discussions similaires

  1. [TPTP] [DEBUTANT]TPTP configuration et interprétation des résultats.
    Par inconnu652000 dans le forum Tests et Performance
    Réponses: 1
    Dernier message: 18/11/2008, 15h43
  2. Comment interpréter les résultats de la FFt ?
    Par kloofi dans le forum Signal
    Réponses: 2
    Dernier message: 09/11/2008, 10h04
  3. Réponses: 2
    Dernier message: 20/06/2008, 07h43
  4. SQLIO - Interprétation des résultats
    Par Ptit_Dje dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 29/04/2008, 09h54
  5. DBCC SQLPERF ( LOGSPACE ) Interprétation des résultats
    Par Labienus dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 20/07/2004, 15h50

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