OVH Cloud OVH Cloud

contenu de liste dynamique

2 réponses
Avatar
Thomas Raso
bonjour, je suis en train de développer une application
html/php/mysql/javascript et je voudrais que je contenu d'une page se fasse
en fonction d'un choix dans une liste déroulante...

en gros un formuliare doit s'afficher suivant le choix dans la liste...

2 réponses

Avatar
Nadine St-Amand
Thomas Raso wrote:
html/php/mysql/javascript et je voudrais que je contenu d'une page se fasse
en fonction d'un choix dans une liste déroulante...


grossierement, il faut reloader un script selon une valeur choisie dans
un select.

c'est plus une question de javascript et d'architecture que de php,
mais allons-y:

<select onchange="charger_formulaire(this)">
...
</select>

Ici "this" represente l'objet select
et va contenir sa valeur choisie
donc dans le code javascript:

function charger_formulaire(choix)
{
document.getElementById('mon_iframe').src = 'form.php?v='+choix.value;
}

et bien sur, l'iframe qui contient le formulaire est marquee de l'id
<iframe src="form.php" id="mon_iframe"></iframe>

C'est une facon de faire (ma preferee).

Tu peux aussi faire avec des frames selon le meme principe,

Autre methode : en rechargeant la page principale mais dans ce cas, le
select va perdre sa valeur, il va falloir prevoir le code pour poser le
'selected' dans la bonne option.

Enfin, une derniere possibilite, c'est de marquer une div avec un id
et de modifier son contenu HTML selon le choix.
Je ne conseille cette methode que si le contenu a affecter est tres
court car il faut tout l'inclure dans le javascript alors

Ca donne:

function charger_formulaire(choix)
{
switch(choix.value)
{
case A:
document.getElementById('ma_div').innerHTML = '<? code A ?>';
break;
case B:
document.getElementById('ma_div').innerHTML = '<? code B ?>';
break;

}
}

ou le code php genere le formulaire pour chaque choix et prend soin de
escaper les quotes simples pour ne pas interferer avec le code javascript.

Je crois qu'il y a ici tous les elements necessaire
pour realiser la page dynamique.

--
Nadine St-Amand
Generateur de code sql2php http://www.phpbackend.com/
Tutoriaux illustrés de C/C++ http://cplusplus.cdoc.biz/

Avatar
Thomas Raso
bon, je vais essayer, je vous tiens au courant de l'avancement de mes
travaux...