Select 1er list et aparition automatik sur la 2ème liste de menu
albatrosss
-
hharchi9 Messages postés 567 Date d'inscription Statut Membre Dernière intervention -
hharchi9 Messages postés 567 Date d'inscription Statut Membre Dernière intervention -
Bonjour la communauté !
je suis entrain de travailler actuellement sur un cde, dans j'ai une BD dans laquelle j'ai une table commissariat et une autre service. la relation est que la clé de commissariat migre dans service, donc service dépend de commissariat.
Je veux créer un formlulaire d'insertion, en faisons appel à une procédure stockée que j'ai déjà créee, dans ce formulaire je veux que lorsqu'on selectionne un commissariat, le service qui va avec s'affiche (correspondance par identifiants). Voici mon code et essayez de m'aider s'il vous plaît.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Document sans titre</title>
</head>
<body>
<form method="post" name="fvn"><br>
Pays
<select name="commissariat" size="1" id="N_COMMISSARIAT" onChange="">
<option value="%" selected>--Choix--</option>
<?php
mysql_connect("localhost","root");
mysql_select_db("gesma");
$requet = "SELECT * FROM commissariat ";
if($resultat=mysql_query($requet))
{
while($ligne= mysql_fetch_row($resultat))
{
$N_COMMISSARIAT=$ligne[0];
$commissariat=$ligne[1];
echo '<option value="',$N_COMMISSARIAT,'">',$commissariat,'</option>';
}
}
else
{
echo "erreur de la requete";
}
mysql_close();
?>
</select><br><br><br>
service
<select name="service" size="1" id="N_SERVICE">
<option value="%" selected></option>
<?php
if(isset($_POST['commissariat'])) // on vérifie qu'un pays à bien été sélectionné
{
$requet = 'SELECT * FROM service WHERE N_COMMISSARIAT=' . $_POST['commissariat'] . ' ORDER BY service'; // on choisit dans la table ville les villes dont le pays correspond à la variable POST, c'est-à-dire à celui qui avait été sélectionné dans le 1er menu déroulant et on les classe par ordre alphabétique
if($resultat=mysql_query($requet))
{
while($ligne= mysql_fetch_row($resultat))
{
$N_COMMISSARIAT=$ligne[0];
$N_SERVICE=$ligne[1];
$service=$ligne[2];
echo '<option value="' . $N_SERVICE . '">' . $service . '</option>';
}
}
else
{
echo "erreur de la requete";
}
}
mysql_close();
?>
</select> <br>
<input name="submit" type="submit" value="Envoyer">
<br>
</form>
</body>
</html>
je suis entrain de travailler actuellement sur un cde, dans j'ai une BD dans laquelle j'ai une table commissariat et une autre service. la relation est que la clé de commissariat migre dans service, donc service dépend de commissariat.
Je veux créer un formlulaire d'insertion, en faisons appel à une procédure stockée que j'ai déjà créee, dans ce formulaire je veux que lorsqu'on selectionne un commissariat, le service qui va avec s'affiche (correspondance par identifiants). Voici mon code et essayez de m'aider s'il vous plaît.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Document sans titre</title>
</head>
<body>
<form method="post" name="fvn"><br>
Pays
<select name="commissariat" size="1" id="N_COMMISSARIAT" onChange="">
<option value="%" selected>--Choix--</option>
<?php
mysql_connect("localhost","root");
mysql_select_db("gesma");
$requet = "SELECT * FROM commissariat ";
if($resultat=mysql_query($requet))
{
while($ligne= mysql_fetch_row($resultat))
{
$N_COMMISSARIAT=$ligne[0];
$commissariat=$ligne[1];
echo '<option value="',$N_COMMISSARIAT,'">',$commissariat,'</option>';
}
}
else
{
echo "erreur de la requete";
}
mysql_close();
?>
</select><br><br><br>
service
<select name="service" size="1" id="N_SERVICE">
<option value="%" selected></option>
<?php
if(isset($_POST['commissariat'])) // on vérifie qu'un pays à bien été sélectionné
{
$requet = 'SELECT * FROM service WHERE N_COMMISSARIAT=' . $_POST['commissariat'] . ' ORDER BY service'; // on choisit dans la table ville les villes dont le pays correspond à la variable POST, c'est-à-dire à celui qui avait été sélectionné dans le 1er menu déroulant et on les classe par ordre alphabétique
if($resultat=mysql_query($requet))
{
while($ligne= mysql_fetch_row($resultat))
{
$N_COMMISSARIAT=$ligne[0];
$N_SERVICE=$ligne[1];
$service=$ligne[2];
echo '<option value="' . $N_SERVICE . '">' . $service . '</option>';
}
}
else
{
echo "erreur de la requete";
}
}
mysql_close();
?>
</select> <br>
<input name="submit" type="submit" value="Envoyer">
<br>
</form>
</body>
</html>
A voir également:
- Select 1er list et aparition automatik sur la 2ème liste de menu
- Liste déroulante excel - Guide
- Liste déroulante en cascade - Guide
- List disk - Guide
- Liste code ascii - Guide
- Comment cacher la liste d'amis sur facebook - Guide
1 réponse
Bonsoir, lorsque vous définissez votre formulaire vous ne précisez pas la page de traitement !
Il faut ajouter :
Il faut ajouter :
<form method="post" name="fvn" action="page.php">
albatrosss
Quelle page de traitement, j'ai une page qui fait appel à ma procédure stockée c'est elle? on dit aussi qu'avec ajax c'est possible, mais je n'ai pas une bonne source !
hharchi9
Messages postés
567
Date d'inscription
Statut
Membre
Dernière intervention
24
Je parle de la page sur laquelle se trouve votre code. Le formulaire qui permet de sélectionner le pays doit être lié à votre script :