Bonjour,

Après avoir cherché dans des multiples forum je n'ai toujours pas trouvé de réponse.

J'aimerai pouvoir insérer des données dans une table et utiliser une liste déroulante provenant d'une autre table de la base de données. Donc pour résumer pouvoir insérer dans une table à partir d'une liste déroulante.

Merci de votre aide.

Hugo.

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
<?php
session_start();
 
    $basededonnees = mysqli_connect('127.0.0.1', 'root', '', 'application');
 
    if(isset($_POST['listeappliformulaire']))
    {
        $libelle_application=htmlspecialchars($_POST['libelle_application']);
        $version_application=htmlspecialchars($_POST['version_application']);
        $liste_id_editeur=($_POST['liste_id_editeur']);
 
        if (!empty($_POST['libelle_application']) AND !empty($_POST['version_application']) AND !empty($_POST['liste_id_editeur']))
        {
            $libelle_applicationlenght=strlen($libelle_application);
            $version_applicationlenght=strlen($version_application);
 
            if ($libelle_applicationlenght <= 50 AND $version_applicationlenght <= 50)
            {
                $libelle_applicationMin=strtolower($libelle_application);
                $libelle_applicationMaj=ucwords($libelle_applicationMin);
 
                $version_applicationMin=strtolower($version_application);
                $version_applicationMaj=ucwords($version_applicationMin);
 
                $requete_liste_applicationsexistant = ("SELECT * FROM r06_liste_applications_pilotage WHERE r06_libelle_application_pilotage ='$libelle_application' AND r06_version_application_pilotage ='$version_application'");
                $resultat=mysqli_query($basededonnees,$requete_liste_applicationsexistant) or die(mysqli_error($basededonnees));
                $row_cnt = mysqli_num_rows($resultat) or die(mysqli_error($basededonnees));
                if($row_cnt == 0)
                {
                    $requete_inserer_liste_application_pilotage = ("INSERT INTO r06_liste_applications_pilotage VALUES ('0', '$libelle_applicationMaj', '$version_applicationMaj', '$liste_id_editeur')");
                    mysqli_query($basededonnees,$requete_inserer_liste_application_pilotage) or die(mysqli_error($basededonnees));
 
                    $message = "La nouvelle liste a bien été créée";
 
                }
                else
                {
                    $erreur = "La liste existe déjà";
                }
            }
            else
            {
                $erreur = "Le nombre de caractères maximum est 50 caractères";
            }
 
        }
        else
        {
            $erreur = "Tous les champs doivent être complétés";
        }
    }
?>
 
<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <link rel="stylesheet" type="text/css" href="http://127.0.0.1:8000/edsa-eds-www/TEST%20V1/Style/style.css">
        <title>Ajouter Liste d'Applications Pilotage</title>
    </head>
    <body>
        <div class="titre2">
            <h3>Ajout d'une Liste d'Applications de Pilotage</h3>
        </div>
 
        <div class="forminscription">
            <form method="POST" action="">
                <table>
                    <tr>
                        <td><label for="libelle_application">Libellé de Liste d'Applications de Pilotage:</label></td>
                        <td><input type="text" name="libelle_application" id="libelle_application" placeholder="Libellé de la Liste"></td>
                    </tr>
                    <tr>
                        <td><label for="version_application">Version de Liste d'Applications de Pilotage:</label></td>
                        <td><input type="text" name="version_application" id="version_application" placeholder="Version de la Liste"></td>
                    </tr>
                    <tr>
                        <td><label for="liste_id_editeur">Id de l'Editeur:</label></td>
                        <td>
                            <select name="liste_id_editeur" id="liste_id_editeur">
                                <?php
                                    $requete_liste_deroulante='SELECT * FROM r05_editeur';
                                    $resultatliste = mysqli_query($basededonnees,$requete_liste_deroulante);
                                    while ($LD = mysqli_fetch_assoc($resultatliste))
                                        {
                                            echo'<option id="'.$LD['r05_id'].'">'.$LD['r05_nom_editeur'].'</option>';
                                        }
 
                                ?>
                            </select>
                        </td>
                    </tr>
                    <tr>
                        <td></td>
                        <td align="center"><input type="submit" name="listeappliformulaire" value="Créer la Nouvelle Liste d'Applications"></td>
                    </tr>
                </table>
            </form>
        </div>
 
        <div class="instructionsform">
            <?php
            if (isset($erreur))
            {
                echo '<font color="red">'.$erreur.'</font>';
            }
 
            if (isset($message))
            {
                echo '<font color="green">'.$message.'</font><br />';
            }
            ?>  
        </div>
 
        <ul class="menupage">
          <li><a href="AjouterListeApplications.php">RAFFRAICHIR LA PAGE</a></li>
          <li><a href="AjouterListeApplications.php">AJOUTER UNE NOUVELLE LISTE D'APPLICATIONS</a></li>
          <li><a href="ParametresListeApplications.php">AFFICHER LES AUTRES LISTE D'APPLICATIONS</a></li>
          <li><a href="Parametres.php">Retour Paramètres</a></li>
          <li><a href="..\MenuPrincipal\MenuPrincipal.php">Retour Menu Principal</a></li>
        </ul>
 
        <?php
            /* Fermeture de la connexion */
            mysqli_close($basededonnees);
        ?>
    </body>
</html>





Le code annonce aucune erreur, mais il ne créé aucun contenu dans la table de la base de données.

Je pense que le problème se situe ici:

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
<tr>
   <td><label for="liste_id_editeur">Id de l'Editeur:</label></td>
   <td>
    <select name="liste_id_editeur" id="liste_id_editeur">
    <?php
         $requete_liste_deroulante='SELECT * FROM r05_editeur';
         $resultatliste = mysqli_query($basededonnees,$requete_liste_deroulante);
         while ($LD = mysqli_fetch_assoc($resultatliste))
        {
            echo'<option id="'.$LD['r05_id'].'">'.$LD['r05_nom_editeur'].'</option>';
        }
 
    ?>
    </select>
    </td>
</tr>
Mais impossible de trouver comment le résoudre.

Je l'impression que la liste ne renvoie rien, c'est-à-dire que lorsque j'active le bouton de validation du formulaire une autre page vide s'ouvre et ensuite plus rien ne se passe.