Bonjour,

J'ai une liste déroulante qui est alimentée à partir d'une base de données.

Le problème c'est lorsque je veux modifier mon formulaire, je veux pouvoir voir ce que j'avais préalablement sélectionné.

Par exemple, dans mon formulaire d'inscription si je sélectionne comme departement l'Oise, lorsque je modifie ce formulaire je veux que cette valeur soit sélectionnée

J'ai deja essayé de récupérer avec un value dans le select mais ça ne fonctionne pas.

Mes deux tables se présentent ainsi :

Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
 
create table DEPARTEMENT
(
Id_departement INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
Departement VARCHAR(50) NOT NULL   default ''
);
 
create table EVENEMENT
(
No_evenement INT AUTO_INCREMENT PRIMARY KEY,
Nom_ev VARCHAR(20),
Id_departement INT,
CONSTRAINT const8 FOREIGN KEY (Id_departement) REFERENCES DEPARTEMENT (Id_departement)
)type=INNODB;

voici mon formulaire de modification

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
 
<?php
session_start();
?>
 
<form name="formulaire" action="index.php?page=modifier/modifier_evenement" method="post">
 
<?php
 
	if (!empty($_GET['Numero']))
	{
	$_SESSION['Nu_evenement']=$_GET['Numero'];
	$numero_evenement=protect($_GET['Numero']);
 
	$donnees=requete_sql("select * from EVENEMENT where No_evenement=$numero_evenement;");
	$donnee=mysql_fetch_array($donnees);
 
	$Nom_ev=($donnee[1]);
	$Id_departement =($donnee[2]);
 
/* Variables de connexion  */
$serveur = "localhost";
$admin   = "root";
$mdp     = "";
$base    = "creation";
?>
 
<head>
 
<?php
$sql = "SELECT `Id_departement`AS idd, `Departement`".
    " FROM `DEPARTEMENT`".
    " ORDER BY `Id_departement`;";
 
 
/* Connexion et exécution de la requête */
$connexion = mysql_connect($serveur, $admin, $mdp);
if($connexion != false)
{
    $choixbase = mysql_select_db($base, $connexion);
    $recherche = mysql_query($sql, $connexion);
 
    $departements = array();
 
    while($ligne = mysql_fetch_assoc($recherche))
    {
        $departements[$ligne['idd']] = $ligne['Departement'];
    }
?>
</head>
 
  <legend>Sélectionnez un département</legend>
    <select name="departement" id="departement">
      <option value="vide">- - - Choisissez un département - - -</option>
    <?php
    /* Construction de la liste */
    foreach($departements as $nd => $nom)
    {
        ?>
    <option value="<?php echo($nd); ?>"><?php echo($nom); ?></option>
<?php
    }
    ?>
    </select>
 
 
<?php
}
else
{
    /* gros problème avec la connexion au serveur de base de données */
?>
</head>
 
<p>La connexion au serveur de base de données a échoué. Aucun élément ne peut être affiché.</p>
<?php	
}	
 
	echo"Nom de l'evenement    <input value='$Nom_ev' type='text' name='Nom_ev'>";
	echo'<input type="submit">';
 
	}
else
	{
	if((!empty($_POST['Nom_ev'])) &&(isset($_SESSION['Nu_evenement'])))
		{
			$numero_evenement=$_SESSION['Nu_evenement'];
 
			$Nom_ev=($_POST['Nom_ev']);
			$Id_departement =($_POST['departement']);
 
			modifier_evenement($numero_evenement,$Nom_ev,$Id_departement);
			echo "modification reussie";
 
		}
        }
 
?>		
</form>