Un Form dans un Form

cs_stailer Messages postés 507 Date d'inscription jeudi 28 mars 2002 Statut Membre Dernière intervention 13 mai 2009 - 17 juin 2003 à 01:22
stanilou Messages postés 193 Date d'inscription mercredi 5 mai 2004 Statut Membre Dernière intervention 18 novembre 2009 - 6 oct. 2004 à 15:25
Salut tout le monde !

Donc voila mon problème :

J'ai un formulaire qui contient notamment un champ et une liste déroulante.
Lorsque je valide 1 de ces champs je voudrais que la liste de données se change selon l'information... SANS valider le formulaire.

Alors j'ai bien essayé de faire un truc du genre :

<form name="form1">

<form name="form2">

</form>

</form>

J'ai joué sur le noms des formulaires, avec le javascript...etc.. Mais rien à faire ca marche pas. Il comprend pas lequel des formulaires je valide.

Quelqu'un aurait-il une idée ? Ou peut-être n'y a t il pas de solution ?

En vous remerciant

Stailer
<-- St@iLeR -->

6 réponses

cs_ekinoks Messages postés 139 Date d'inscription lundi 7 janvier 2002 Statut Membre Dernière intervention 15 novembre 2005
17 juin 2003 à 02:15
je m'y conné pas trop encore, je debut dans le php mais je pence que ca c plutot du java que du php :-/
va voir dans la section java je pence ou attent l'avi d'un exper ;)
0
Kenaghdar Messages postés 71 Date d'inscription mardi 10 juin 2003 Statut Membre Dernière intervention 27 juin 2003 2
17 juin 2003 à 10:04
Hello,

Je ne suis pas encore un pro non plus, mais voici deux idées de solutions:

1/ Javascript: si tu connais le contenu de ta liste déroulante, tu peux créer un tableau en Javascript contenant ces différentes valeurs, puis charger les valeurs voulues dans ta liste déroulante via une fonction déclenchée par l'event onChange placé sur un des champs. Le problème est que si tu as un grand jeu de valeurs pour ta liste déroulante, le chargement de la page risque d'être un peu long.

2/ PHP: tu peux également écrire une page PHP qui va générer le contenu de ta liste déroulante, sans pour autant recharger la page. Il suffit que tu appelles cette page PHP dans une frame cachée et de rapatrier le contenu via un innerHTML. Mais c'est peut-être un peu compliqué.

Remarques, si tu as un peu de temps, la manière solution, c'est encore de jouer avec un XML et XSL au niveau client (à condition que le client possède un parseur installé sur son système).

Ce sont juste des idées qui me passent par la tête, sans être certain que tu puisses les mettre en application.

A+

Ken.
0
willowman Messages postés 143 Date d'inscription vendredi 5 juillet 2002 Statut Membre Dernière intervention 18 mars 2006 1
25 juin 2003 à 03:53
Salut !!

Je ne suis pas sur d'avoir bien saisie ce que tu voulais faire, mais voici un exemple (vite fait) qui repondra peut etre a ta question...

Si tu as un prb avec mon code, fait le moi savoir !!
Note : j'ai fait ca vite fait en voyant ton message, donc l'interet de ma liste reste a confirmer !!. ;-)

Allez A+ :-)

exemple :

-------------------

<html>
<head>

<script language= "JavaScript">
<!--
function updateFieldFromList(liste,champs) {
<!-- ma fonction prend donc en parametre, la liste des elements a comparer, et le champs pour afficher le resultat -->

for (var i=0; i <= liste.length; i++) {
if(liste.options[i].selected) {
champs.value = liste.options[i].value;
return;
};
}
}
-->
</script>
</head>

<form name="choix">
Une liste de themes...
<select name="entree" size=5 onClick="updateFieldFromList(this.form.entree,this.form.sortie)">
<option value="" selected> -- Choisit un theme--
<option value ="couleur">Couleur
<option value="dimension">Dimension
<option value="forme">Forme
</select>
Le resultat de ta selection (sans recharger la page) :

</html>
-------------------
0
cs_stailer Messages postés 507 Date d'inscription jeudi 28 mars 2002 Statut Membre Dernière intervention 13 mai 2009 1
25 juin 2003 à 13:09
Salut,

Merci pour ce code que je vais mettre de côté, mais concernant ce que je voulais faire ca n'est pas ca.

Si tu veux, j'ai une liste de noms dans une zone de liste entourée par la balise form.
En fonction du nom sélectionné je voudrais qu'une liste au-dessous se remplisse avec le prénom correspondant (c'est un exemple... Pas la réalité).

Ca j 'y arriverai... Mais le problème est que ces 2 listes et ce form sont justement dans un autre form pour afficher des informations sur la page php qui récupère les valeurs du post.

Donc vala.. Pas évident.

M'enfin bon, merci quand même pour ton code, il me servira pour d'autres trucs.

A++

<-- St@iLeR -->
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_Eagle1792 Messages postés 4 Date d'inscription lundi 19 avril 2004 Statut Membre Dernière intervention 14 décembre 2004
6 juil. 2004 à 22:25
A mon avis le php est la meilleure solution à ton probleme...
Bon il serait quand meme bien de valider le formulaire, ne serait ce que pour raffraichir la page, mais je ne suis pas vraiment un boss dans ce domaine...
Si j'étais toi (enfin j'ai pas tres bien compris ce que tu voulais faire mais...), je ferais un truc du genre:

<?php
$choix = $_POST['choix'];
?>

<form name="form1" action="recharge.php" method="post">
<select name="choix">
<option value="choix1">choix 1
<option value="choix2">choix 2
<option value="choix3">choix 3
</select>

">
</form>

Bon y'a peut etre des erreurs (certainement) mais soyez cools je ne suis que débutant ;)
0
stanilou Messages postés 193 Date d'inscription mercredi 5 mai 2004 Statut Membre Dernière intervention 18 novembre 2009
6 oct. 2004 à 15:25
y a un probleme dans ton code...
le truc c'est que quand tu lance ta page pour la premiere fois ba y a une erreur du type
 Notice: Undefined index: choix in  
c un peut chiant et je ne sait pas comment le resoudre alors si voua avez des idéés...
Merci d'avance
nats
0
Rejoignez-nous