By: Zed
Date: 2005-02-17
Time: 23:26
|
Formulaires dynamiques
Bonjour,
J'ai voulu crée, en m'inspirant de votre exemple d'affichage conditionnel, 2 liste déroulante dont l'une (région) dépend de la sélection de l'autre(province) mais le rafraichissement s'effectue en remettant les valeurs initiales.
Voici mon code :
<?
include_once('Libs/tbs_class.php') ;
include_once('../mysql.php') ;
$connect = mconnect();
$TBS = new clsTinyButStrong ;
$TBS->CacheAction('*',TBS_DELETE);
$TBS->LoadTemplate('Templates/Adresse.html') ;
if (isset($_POST['x_province']) and $_POST['x_province'] != "0")
{
$x_province = $_POST['x_province'];
;
$x_region = "0";
$TBS->MergeBlock('regionblk', $connect, sql_Liste_Regions($x_pro));
}
else
{
$NullTab = array();
$x_province = "0";
$x_region = "0";
$TBS->MergeBlock('provinceblk', $connect, sql_Liste_Provinces()) ;
$TBS->MergeBlock('regionblk', $NullTab) ;
}
$TBS->Show() ;
?>
--------------------
<title>Saisie d'un nouveau logement</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link href="../../styles.css" rel="stylesheet" type="text/css">
<script language="JavaScript" type="text/JavaScript">
function m_pro_Select() {
window.location = '[var..script_name]?x_province=' + window.document.frm_condition.province.value
}
function m_reg_Select() {
window.location = '[var..script_name]?x_region=' + window.document.frm_condition.region.value
}
</script>
</head>
<body>
<table width="400" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td width="400"><table width="100%" border="1" cellpadding="0" cellspacing="0" bordercolor="0099CC">
<tr>
<td height="20" bgcolor="#00CCCC"align ="center"><b>Coordonnées</b></td>
</tr>
<form action="[var..script_name]" method="post" name="frm_condition" id="frm_condition">
<tr>
<td><table width="100%" border="0" cellspacing="0" cellpadding="2">
<tr align="left" valign="bottom" class="back-special2">
<td width="52">Province : </td>
<td width="188">
<select name="province" class="normal" id="lst_block" onChange="javascript:m_pro_Select()">
<option value="0"><faites un choix></option>
<option value="[provinceblk.Nom_Province]">[provinceblk.Nom_Province;block=option]</option>
<option>[var.x_province;selected]</option>
</select>
</td>
</tr>
<tr align="left" valign="bottom" class="back-special2">
<td>Région : </td>
<td>
<select name="region" class="normal" id="lst_block" onChange="javascript:m_reg_Select()">
<option value="0"><faites un choix></option>
<option value="[regionblk.Nom_Region]">[regionblk.Nom_Region;block=option]</option>
<option>[var.x_region;selected]</option>
</select>
</td>
</tr>
</form>
</table></td>
</tr>
</table></td>
</tr>
</table>
</body>
</html>
|
By: Skrol29
Date: 2005-02-18
Time: 02:19
|
Re: Formulaires dynamiques
Bonjour Zed,
$_POST['x_province'] n'existe jamais. Tu l'as passé par l'URL, il est donc dans $_GET.
PS : ta balise </form> est mal placée, elle devrait se situer après le </tr> suivant.
|