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 :

Pb liste déroulante [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Février 2009
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 34
    Par défaut Pb liste déroulante
    Je veux récupéré dans une liste déroulante les données que j'ai dans une table, ça avait marché mais depuis j'ai du toucher à quelques puique celà ne marche plus. Et je ne trouve pas où est l'erreur.

    Voici mes deux requêtes :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <php
      include "../config.php" ;
     
     $reponse=mysql_query("select * from services");
     $reponses=mysql_query("select * from contrats");
    ?>
    et ici mes deux listes déroulantes :

    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
    <tr><label><td><b>service</td><td>:</td></b>
     
    <td><label><?php echo '<select name="services">';?>
     
    <?php while ($boucle=mysql_fetch_assoc($reponse)) {
     
                echo '<option value="'.$boucle['type_service'].'">'.$boucle['type_service'].'</option>';
     
                } ?>
     
    <tr><label><td><b>contrat</td><td>:</td></b>
     
    <br>
     
    <td><label><?php echo  '<select name="contrats">'; ?>
     
    <?php while ($boucles=mysql_fetch_assoc($reponses)) {
     
                echo '<option value="'.$boucles['num_contrat'].'">'.$boucles['type_contrat'].'</option>';
     
                }
    merci de votre aide !

  2. #2
    Membre émérite Avatar de obito
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2008
    Messages
    773
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Janvier 2008
    Messages : 773
    Par défaut
    Bonjour ! Après le premier while tu ne ferme pas la liste je crois...

    Et pareil pour la deuxième

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Février 2009
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 34
    Par défaut
    je les ai rajouté mais celà ne change rien. j'ai toujours mes listes vides.

  4. #4
    Membre émérite Avatar de obito
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2008
    Messages
    773
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Janvier 2008
    Messages : 773
    Par défaut
    Re!^^
    Après ton while, tu ne ferme pas non plus la ligne de tableau :

    Je trouve pas encore ce qui plante mais déjà corriger ca ca ira mieux côté affichage après^^

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Février 2009
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 34
    Par défaut
    ok, merci pour ton aide.

  6. #6
    Membre émérite Avatar de obito
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2008
    Messages
    773
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Janvier 2008
    Messages : 773
    Par défaut
    Je ne t'aide pas beaucoup mais comme je vois rien qui cloche à part la mise en forme html je te propose ça^^

    Par ailleurs je crois que tu ne ferme pas les label non plus

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Février 2009
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 34
    Par défaut
    je mets mon script, car si ça se trouve l'erreur n'est pas là !

    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
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    <php
      include "../config.php" ;
    ?>
    <?php
    include "../entetebis.php";
    ?>
    <link rel="stylesheet" href="../style/template.css" type="text/css" />
          <script language="javascript">
                  function verifier(){
     
                           if((document.form.nom.value != '') 
                           && (document.form.prenom.value !='')
                           && (document.form.jour.value !='')
                           && (document.form.mois.value !='')
                           && (document.form.an.value !='')
                           && (document.form.jours.value !='')){
     
                                  return(confirm('voulez-vous vraiment ajouter cette personne ?'))
     
                                  }
     
                                  else {
     
                                       document.form.nom.focus();
                                       document.form.prenom.focus();
                                       document.form.jour.focus();
                                       document.form.mois.focus();
                                       document.form.an.focus();
                                       document.form.jours.focus();
                                       alert("un ou plusieurs champs ne sont pas remplis");
     
                                       }
     
                                       return false;
     
                                       }
    </script>
     
     
    <body>
     
    <table border=0 width="30%">
     
           <td width="30%">
     
               <div id="bgcolor">
     
                    <div id="font">
     
                         <center><h4>nouveau salarié</h4></center>
     
                    </div>
     
               </div>
     
           </td>
     
    </table>
     
    <table border=0 width="30%">
     
     
    <form name="form" method="post" action="insert.php">
     
    <tr><label><td><b>nom              </td><td>:</td></b><td><input type="text" name="nom" /> </td></label></tr></br>
    <tr><label><td><b>prénom           </td><td>:</td></b><td><input type="text" name="prenom" /> </td></label></tr></br>
    <tr><label><td><b>date de naissance</td><td>:</td></b><td>
     
        <p>
            <input type="text" style="width:26px" name="jour" size="2" maxlength="2" /> -
            <input type="text" style="width:26px" name="mois" size="2" maxlength="2" /> -
            <input type="text" style="width:40px" name="an" size="4" maxlength="4" />
     
        </p>
     
     
    <tr><label><td><b>service</td><td>:</td></b>
     
    <td><label><?php echo '<select name="services">';?>
     
    <?php $reponse=mysql_query
    ("select * from services");
     
    while ($boucle=mysql_fetch_assoc($reponse)) {
     
                echo '<option value="'.$boucle['type_service'].'">'.$boucle['type_service'].'</option></label>';
     
                }?> </select>;
                    </tr>
    <tr><label><td><b>contrat</td><td>:</td></b>
     
    <br>
     
    <td><label><?php echo  '<select name="contrats">'; ?>
     
    <?php
    $reponses=mysql_query("select * from contrats");
    while ($boucles=mysql_fetch_assoc($reponses)) {
     
                echo '<option value="'.$boucles['num_contrat'].'">'.$boucles['type_contrat'].'</option></label>';
     
     
     
                }
     
                mysql_close();
                ?>
    </select>') 
     
    </tr>
    <tr><label><td><b>jours de congés</td><td>:</td></b><td><input type="text" name="jours" style="width:26px" maxlength="2"/></td></label></tr></br>
     
    <tr><label><td><b>journée locales</td><td>:</td></b><td><input type="checkbox" name="journeelocale" /></td></label></tr></select>
     
     
    </table> </br>
     
    <table border=0 width="30%">
     
    <p>
     
       <td width="30%">
     
           <center><input type="submit" onclick="return(verifier());" value="envoyer le formulaire" />
     
        </td>
        </p>
    </table>
    </form>

  8. #8
    Membre émérite Avatar de obito
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2008
    Messages
    773
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Janvier 2008
    Messages : 773
    Par défaut
    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
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    <php
      include "../config.php" ;
    ?>
    <?php
    include "../entetebis.php";
    ?>
    <link rel="stylesheet" href="../style/template.css" type="text/css" />
          <script language="javascript">
                  function verifier(){
     
                           if((document.form.nom.value != '') 
                           && (document.form.prenom.value !='')
                           && (document.form.jour.value !='')
                           && (document.form.mois.value !='')
                           && (document.form.an.value !='')
                           && (document.form.jours.value !='')){
     
                                  return(confirm('voulez-vous vraiment ajouter cette personne ?'))
     
                                  }
     
                                  else {
     
                                       document.form.nom.focus();
                                       document.form.prenom.focus();
                                       document.form.jour.focus();
                                       document.form.mois.focus();
                                       document.form.an.focus();
                                       document.form.jours.focus();
                                       alert("un ou plusieurs champs ne sont pas remplis");
     
                                       }
     
                                       return false;
     
                                       }
    </script>
     
     
    <body>
     
    <table border=0 width="30%">
     
           <td width="30%">
     
               <div id="bgcolor">
     
                    <div id="font">
     
                         <center><h4>nouveau salarié</h4></center>
     
                    </div>
     
               </div>
     
           </td>
     
    </table>
     
    <table border=0 width="30%">
     
     
    <form name="form" method="post" action="insert.php">
     
    <tr><td><b><label for="nom">nom </label></b></td><td>:</td><td><input type="text" name="nom" id="nom" /> </td></tr>
    <tr><td><b><label for="prenom">prénom</label></b></td><td>:</td><td><input type="text" name="prenom" id="prenom" /> </td></tr>
     
    <tr><td><b><label for="jour">date de naissance</label></b></td><td>:</td><td>
     
        <p>
            <input type="text" style="width:26px" name="jour" id="jour" size="2" maxlength="2" /> -
            <input type="text" style="width:26px" name="mois" size="2" maxlength="2" /> -
            <input type="text" style="width:40px" name="an" size="4" maxlength="4" />
     
        </p>
     
     </td></tr>
    <tr><td><label for="services"><b>service</b></td><td>:</td>
     
    <td><?php echo '<select name="services" id="services">';?>
     
    <?php $reponse=mysql_query("select * from services");
     
    while ($boucle=mysql_fetch_assoc($reponse)) {
     
                echo '<option value="'.$boucle['type_service'].'">'.$boucle['type_service'].'</option>';
     
                }?> </select>;
                    </td>
                    </tr>
    <tr><td><b><label for="contrats">contrat</label></b></td><td>:</td>
     
    <br>
     
    <td><?php echo  '<select name="contrats" id="contrats">'; ?>
     
    <?php
    $reponses=mysql_query("select * from contrats");
    while ($boucles=mysql_fetch_assoc($reponses)) {
     
                echo '<option value="'.$boucles['num_contrat'].'">'.$boucles['type_contrat'].'</option>';
     
                  }
     
                mysql_close();
                ?>
     
    </select>
        </td>         
    </tr>
    <tr><td><label for="jours2"><b>jours de congés</b></label></td><td>:</td><td><input type="text" name="jours" id="jours2" style="width:26px" maxlength="2"/></td></tr>
     
    <tr><td><label for="journeelocale"><b>journée locales</b></label></td><td>:</td><td><input type="checkbox" name="journeelocale" id="journeelocale" /></td></tr>
     
     
    </table> </br>
     
    <table border=0 width="30%">
     
     
     <tr>
       <td width="30%">
     
           <center><input type="submit" onclick="return(verifier());" value="envoyer le formulaire" />
     
        </td></tr>
     
    </table>
    </form>
    Bon voila j'ai fait un code plus propre sans vrai modification dans le php à tester

  9. #9
    Membre averti
    Profil pro
    Inscrit en
    Février 2009
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 34
    Par défaut
    merci, pour avoir remis mon code au propre, malheureusement toujours le même problème.
    est-ce que c'est possible que cela vienne d'un problème easyphp ?

    car j'ai parcouru plusieurs site, et j'ai exactement la même méthode de faites.

  10. #10
    Membre émérite Avatar de obito
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2008
    Messages
    773
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Janvier 2008
    Messages : 773
    Par défaut
    En fait qu'es ce qui ne marche pas : Liste vide, page blanche?

    Après chaque requête il faudrait déjà rajouter:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <?php $reponse=mysql_query("select * from services") or die(mysql_error());
    Si ca vient de la connexion avec la base par exemple...

  11. #11
    Membre averti
    Profil pro
    Inscrit en
    Février 2009
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 34
    Par défaut
    j'ai une liste vide, j'avais fais une sauvegarde préalable (à ce moment la liste marchait) donc j'ai vérifié et c'est le même code. donc c'est pour ça que je ne vois pas où l'erreur peut être et me dis que c'est peut-être easy php qui foire.

  12. #12
    Membre émérite Avatar de obito
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2008
    Messages
    773
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Janvier 2008
    Messages : 773
    Par défaut
    C'est bizarre ca Oo^^ si le mysql_error() ne renvoi rien c'est que la requête marche et que donc la liste devrait se remplir... Si la requête semble s'exécuter correctement cela ne vient pas spécialement de easyphp il y a peut une ligne, une toute petite ligne qui fait que cela ne marche plus...

    Sinon ben essaie de redémarrer les serveurs

    EDIT : Je viens de voir que ton formulaire n'avait pas de bouton submit c'est normal?

  13. #13
    Membre averti
    Profil pro
    Inscrit en
    Février 2009
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 34
    Par défaut
    si il est à la fin :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <center><input type="submit" onclick="return(verifier());" value="envoyer le formulaire" />
    EDIT : Je viens de faire un essai en ajoutant une autre personne, et il me met un undefined index pour contrats et services.

  14. #14
    Membre émérite Avatar de obito
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2008
    Messages
    773
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Janvier 2008
    Messages : 773
    Par défaut
    Autant pour moi ><^^ SInon ben le mysql_error() ne renvoi rien donc, pas d'erreur, juste une liste vide? déjà je te propose de faire ça:

    tu fais le mysql_query avant de créer la liste
    Exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    <?php 
    $reponse=mysql_query("select * from services");
    $t=mysql_num_rows;
    echo $t;
    echo '<select name="services" id="services">';
     
    while ($boucle=mysql_fetch_assoc($reponse)) {
     
                echo '<option value="'.$boucle['type_service'].'">'.$boucle['type_service'].'</option>';
     
                }?> </select>;
    Juste pour voir le nombre de ligne retourné... Si y a plus de 0 c'est que c'est la construction de la liste qui va pas^^

  15. #15
    Membre averti
    Profil pro
    Inscrit en
    Février 2009
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 34
    Par défaut
    Il me met ce message d'erreur :

    Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in c:\program files\easyphp1-8\www\gestion_conges\ajouter\ajout_personne.php on line 93

    La ligne 93 :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    while ($boucle=mysql_fetch_assoc($reponse)) {

  16. #16
    Membre émérite Avatar de obito
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2008
    Messages
    773
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Janvier 2008
    Messages : 773
    Par défaut
    Ha donc la requete va pas

    Sinon je me suis trompé sur un ligne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $t=mysql_num_rows($reponse);
    C'est ça qu'il faut écrire désolé^^

  17. #17
    Membre averti
    Profil pro
    Inscrit en
    Février 2009
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 34
    Par défaut
    ça y'est c'est réparé, la plus conne des erreurs

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <php
      include "../config.php" ;
    j'ai oublié le "?"

  18. #18
    Membre émérite Avatar de obito
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2008
    Messages
    773
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Janvier 2008
    Messages : 773
    Par défaut


    J'étais tellement concentré sur la liste que j'ai pas vu ce "petit" souci^^

    Bref ben tant mieux alors !

  19. #19
    Membre averti
    Profil pro
    Inscrit en
    Février 2009
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 34
    Par défaut
    moi c'est la même je ne pensais pas que ça venait de là, vu que la liste marchait depuis déjà quelques temps.

    merci de ta patience en tout cas.

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

Discussions similaires

  1. valeur d'une liste déroulante
    Par leeloo076 dans le forum ASP
    Réponses: 7
    Dernier message: 15/04/2004, 16h11
  2. liste déroulante
    Par leeloo076 dans le forum ASP
    Réponses: 12
    Dernier message: 23/03/2004, 10h35
  3. liste déroulante avec session
    Par leeloo076 dans le forum ASP
    Réponses: 3
    Dernier message: 19/03/2004, 11h01
  4. liste déroulante en ASP vbscript
    Par leeloo076 dans le forum ASP
    Réponses: 9
    Dernier message: 17/03/2004, 16h42
  5. Listes déroulantes liées entre elles
    Par denisC dans le forum Général JavaScript
    Réponses: 0
    Dernier message: 27/07/2002, 15h53

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