Précédent
- 1
- 2
-
Pas grave..
Juste avant ton formulaire tu met ca :if( isset( $_POST['mode'] ) ) $mode = $_POST['mode']; else $mode = "aucun"; if( isset( $_POST['objet'])) $objet = $_POST['objet']; else $objet = "aucun";
Ca permet de récupérer les valeur selectionnée quand tu vas appuyer sur le bouton submit de ton formulaire.
Ensuite si qqun peut nous dire quelle propriété des liste déroulante permet de mettre une valeur par défaut ca serati sympa de sa part car je ne connait pas.
merci
++ -
tu pourra essayer avec "selected" de l'objet "<SELECT>" (et non du OPTION)
-
Comme cela Sam ?
<select name="objet" selected=<?php echo $objet; ?>>
-
en tout cas ce code ne fonctionne pas...
Peut etre parcke je crois que la page se reactualise a chaque fois-
non non, normalement ta page ne dois se réactualiser quand quand tu clique sur le bouton du formulaire : la fonction javascript n'effectue pas de rechargement de la page justement (c'est ca qui est bien).
Si ca ne marche pas, essai ca pour voir :
rajoute apres les "if(isset...." que je t'ai fait mettre :echo "Valeur de 'mode' = ".$mode."<BR>"; echo "Valeur de 'objet' = ".$objet."<BR>";
Et dit nous ce qu'il te met . -
-
-
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
Ben j'ai selectionner table et sequence et ca ma afficher cela:
Valeur de 'mode' = table
Valeur de 'objet' = sequences
Mais je comprend pas parcke ca reviens kan meme a ma valeur par defaut.... -
Il me semble avoir effectuer tous les changements et pourtant ca ne fonctionne toujorus pas...
merci kan meme pour votre aide
si vous avez une autre idée je suis toujorus a l'écoute -
ok, alors remplace :
<select name="objet" selected=<?php echo $objet; ?>>
par ca :<?php echo "<select name=\"objet\" selected=\"".$objet."\">"; ?>
Pour les deux select et redit ca.
++ -
j'ai fait ca:
sélectionnez ce que vous désirez faire:</font></i></font></div> <?php echo "<select name=\"mode\" selected=\"".$mode."\" onchange='change_mode()'>";?> <option value="formulaire" selected>Formulaires</option> <option value="table">Tables</option> <option value="requete">Requêtes</option> </select> <?php echo "<select name=\"objet\" selected=\"".$objet."\">";?> <option value="sequences">Nouvelle séquence</option> <option value="alignements">Nouvel alignement</option> <option value="primers">Nouveau primer</option> <option value="resultats_analyses">Nouvelle analyse</option> <option value="types_sequences">Nouveau type de sequence</option> <option value="types_analyses">Nouveau type d'analyse</option> <option value="individus">Nouvel organisme</option> <option value="tissus">Nouveau tissu</option> </select>
et ca ca ne fonctionne pas.
Mais j'ai quand meme l'impression que mon menu se reactualise a chaque fois parcke j'explique:
quand je selectionne par exemple table et quelque chose au chargement de la page correpsondant le menu disparait et reapparait avec la nouvelle page..
Après peut etre jme trompe.......... -
J'a itrouver comment garder la denrière valeur selectionner.
Il suffit de faire ceci:
<select name="mode" onChange="change_mode();">
<option value="formulaire" <?if($mode=="formulaire") echo "selected"; ?> >Formulaires</option>
<option value="table"<?if($mode=="table") echo "selected"; ?>>Tables</option>
<option value="requete" <?if($mode=="requete") echo "selected"; ?>>Requêtes</option>
</select>
Par contre je n'arrive pas a faire pareil pour me soptions, je ne vois pas ou l'inclure dans mon code
Si vous avez une idée. -
Ben le probleme est que si tu regarde mon code tu peux voir que option n'est pas construit pareil.
J'ai les différentes options de formulaire,table et requete dans mon code en javascript
et j'ai seulement les options de formulaire dans ce format:
<select name="objet" > <option value="sequences">Nouvelle séquence</option> <option value="alignements">Nouvel alignement</option> ...
alors comme je l'ai dit je sais pas ou mettre le truc ki me permettra de rester sur la dernière option -
Voici mon code
<head> <script language="Javascript"> function change_mode() { ind = document.menu.mode.selectedIndex; if (document.menu.mode.options[ind].value == 'formulaire') { document.menu.objet.options.length = 0; var o=new Option('Nouvelle séquence','sequences'); document.menu.objet.options[document.menu.objet.options.length]=o; var o=new Option('Nouvel alignement','alignements'); document.menu.objet.options[document.menu.objet.options.length]=o; var o=new Option('Nouveau type de sequence', 'types_sequences'); document.menu.objet.options[document.menu.objet.options.length]=o; var o=new Option('Nouveau primer','primers'); document.menu.objet.options[document.menu.objet.options.length]=o; var o=new Option('Nouvelle analyse','resultats_analyses'); document.menu.objet.options[document.menu.objet.options.length]=o; var o=new Option('Nouveau type d\'analyse','types_analyses'); document.menu.objet.options[document.menu.objet.options.length]=o; var o=new Option('Nouvel organisme','individus'); document.menu.objet.options[document.menu.objet.options.length]=o; var o=new Option('Nouveau tissu','tissus'); document.menu.objet.options[document.menu.objet.options.length]=o; document.menu.action.value = "ajouter"; } if (document.menu.mode.options[ind].value == 'table') { document.menu.objet.options.length = 0; var o=new Option('Les séquences','sequences'); document.menu.objet.options[document.menu.objet.options.length]=o; var o=new Option('Les alignements','alignements'); document.menu.objet.options[document.menu.objet.options.length]=o; var o=new Option('Les résultats d alignements','resultats_alignements'); document.menu.objet.options[document.menu.objet.options.length]=o; var o=new Option('Les differents types de sequences','types_sequences'); document.menu.objet.options[document.menu.objet.options.length]=o; var o=new Option('Les primers','primers'); document.menu.objet.options[document.menu.objet.options.length]=o; var o=new Option('Les résultats d analyses','resultats_analyses'); document.menu.objet.options[document.menu.objet.options.length]=o; var o=new Option('Les differents types d analyses','types_analyses'); document.menu.objet.options[document.menu.objet.options.length]=o; var o=new Option('Les organismes repertoriés','individus'); document.menu.objet.options[document.menu.objet.options.length]=o; var o=new Option('Les differents tissus de prélèvement','tissus'); document.menu.objet.options[document.menu.objet.options.length]=o; document.menu.action.value = "visualiser"; } if (document.menu.mode.options[ind].value == 'requete') { document.menu.objet.options.length = 0; var o=new Option('Analyses faites pour un gène donné','ana_gene'); document.menu.objet.options[document.menu.objet.options.length]=o; var o=new Option('Analyses faites pour un type d analyse donné','pri_type'); document.menu.objet.options[document.menu.objet.options.length]=o; var o=new Option('analyses faites pour un primer donné','ana_pri'); document.menu.objet.options[document.menu.objet.options.length]=o; var o=new Option('analyses faites pour une personne donnée','ana_per'); document.menu.objet.options[document.menu.objet.options.length]=o; var o=new Option('analyses faites en fonction d une technique donnée','ana_tech'); document.menu.objet.options[document.menu.objet.options.length]=o; var o=new Option('Primers utilisés en fonction d une analyse donnée','pri_ana'); document.menu.objet.options[document.menu.objet.options.length]=o; document.menu.action.value = "rechercher"; } return; } </script> </head> <hr> <form method="post" objet="<? echo $PHP_SELF; ?>" name="menu" enctype=multipart/form-data> <div align="center"><font size="2"><i><font size="2"><b>Menu déroulant</b></font><b><font size="2">::</font></b><font size="2"> sélectionnez ce que vous désirez faire:</font></i></font></div> <select name="mode" onChange="change_mode();"> <option value="formulaire" <?if($mode=="formulaire") echo "selected"; ?> >Formulaires</option> <option value="table"<?if($mode=="table") echo "selected"; ?>>Tables</option> <option value="requete" <?if($mode=="requete") echo "selected"; ?>>Requêtes</option> </select> <select name="objet" > <option value="sequences">Nouvelle séquence</option> <option value="alignements">Nouvel alignement</option> <option value="primers">Nouveau primer</option> <option value="resultats_analyses">Nouvelle analyse</option> <option value="types_sequences">Nouveau type de sequence</option> <option value="types_analyses">Nouveau type d'analyse</option> <option value="individus">Nouvel organisme</option> <option value="tissus">Nouveau tissu</option> </select> <INPUT type="hidden" name ="action" value="ajouter"> <INPUT type="hidden" name="num_enr" value=""> <input type="submit" name="Submit" value="OK"> </form> <hr> </div>
Si tu trouve jt'en serai très reconnaissant-
Tu as bien gardé les :
if(isset($_POST['mode'])) $mode = $_POST['mode'] else $mode = ""; if(isset($_POST['objet'])) $objet = $_POST['objet']; else $objet = ""; <hr> <form method="post" objet="<? echo $PHP_SELF; ?>" name="menu" enctype=multipart/form-data> <div align="center"><font size="2"><i><font size="2"><b>Menu déroulant</b></font><b><font size="2">::</font></b><font size="2"> sélectionnez ce que vous désirez faire:</font></i></font></div> <select name="mode" onChange="change_mode();"> <option value="formulaire" <?if($mode=="formulaire") echo "selected"; ?> >Formulaires</option> <option value="table"<?if($mode=="table") echo "selected"; ?>>Tables</option> <option value="requete" <?if($mode=="requete") echo "selected"; ?>>Requêtes</option> </select> <select name="objet" > <option value="sequences" <?if($objet=="sequences") echo "selected"; ?>>Nouvelle séquence</option> <option value="alignements" <?if($objet=="alignements") echo "selected"; ?> >Nouvel alignement</option> <option value="primers" <?if($objet=="primers") echo "selected"; ?> >Nouveau primer</option> <option value="resultats_analyses"<?if($objet=="resultats_analyses") echo "selected"; ?>>Nouvelle analyse</option> <option value="types_sequences"<?if($objet=="types_sequences") echo "selected"; ?>>Nouveau type de sequence</option> <option value="types_analyses"<?if($objet=="types_analyses") echo "selected"; ?>>Nouveau type d'analyse</option> <option value="individus"<?if($objet=="individus") echo "selected"; ?>>Nouvel organisme</option> <option value="tissus"<?if($objet=="tissus") echo "selected"; ?>>Nouveau tissu</option> </select> <INPUT type="hidden" name ="action" value="ajouter"> <INPUT type="hidden" name="num_enr" value=""> <input type="submit" name="Submit" value="OK"> </form> <hr>
Voilà, ca devrait aller ca non ?
-
-
Non j'ai enlever le code avec le sif isset car ca marche sans et que sinon ca me faisait planter autre chose.
Par contre maintenant ce fonctionne pour les options mais seulement pour les options du formulaire.
Pas pour table et requete.....-
oui.. je vois pourquoi ca va pas. Tu n'a pas forcément les mêmes "sous menus" d'un mode à l'autre.
Ce qu'il faudrait faire, ce n'est pas modifié la valeur 'selected' dans la partie php, mais plutot dans la fonction JS, en passant la valeur de l'objet choisi à la fonction (this.value), puis en accedant à la propriété 'selected' depuis la fonction JS comme ca par exemple : -
-
-
-
Un truc comme ca :
<?php if(isset($_POST['mode'])) $mode = $_POST['mode'] else $mode = ""; if(isset($_POST['objet'])) $objet = $_POST['objet']; else $objet = ""; ?> <hr> <form method="post" objet="<? echo $PHP_SELF; ?>" name="menu" enctype=multipart/form-data> <div align="center"><font size="2"><i><font size="2"><b>Menu déroulant</b></font><b><font size="2">::</font></b><font size="2"> sélectionnez ce que vous désirez faire:</font></i></font></div> <select name="mode" onChange="change_mode();"> <option value="formulaire" <?if($mode=="formulaire") echo "selected"; ?> >Formulaires</option> <option value="table"<?if($mode=="table") echo "selected"; ?>>Tables</option> <option value="requete" <?if($mode=="requete") echo "selected"; ?>>Requêtes</option> </select> <?php if($mode=="table") include "table_objet.php"; else if(mode=="requete") include "requete_objet.php"; else include "formulaire_objet.php"; ?>
Selon le mode semectionné tu appelle telle ou telle script qui écrit la fin de formulaire coorespondante :
formulaire_objet.php :<select name="objet" > <option value="sequences" <?if($objet=="sequences") echo "selected"; ?>>Nouvelle séquence</option> <option value="alignements" <?if($objet=="alignements") echo "selected"; ?> >Nouvel alignement</option> <option value="primers" <?if($objet=="primers") echo "selected"; ?> >Nouveau primer</option> <option value="resultats_analyses"<?if($objet=="resultats_analyses") echo "selected"; ?>>Nouvelle analyse</option> <option value="types_sequences"<?if($objet=="types_sequences") echo "selected"; ?>>Nouveau type de sequence</option> <option value="types_analyses"<?if($objet=="types_analyses") echo "selected"; ?>>Nouveau type d'analyse</option> <option value="individus"<?if($objet=="individus") echo "selected"; ?>>Nouvel organisme</option> <option value="tissus"<?if($objet=="tissus") echo "selected"; ?>>Nouveau tissu</option> </select> <INPUT type="hidden" name ="action" value="ajouter"> <INPUT type="hidden" name="num_enr" value=""> <input type="submit" name="Submit" value="OK"> </form> <hr>
table_objet.php :<select name="objet" > <option value="sequences" <?if($objet=="sequences") echo "selected"; ?>>Nouvelle séquence</option> <option value="alignements" <?if($objet=="alignements") echo "selected"; ?> >Nouvel alignement</option> <option value="Les résultats d alignements" <?if($objet=="resultats_alignements") echo "selected";?> >resultats_alignements </option> <option value="primers" <?if($objet=="primers") echo "selected"; ?> >Nouveau primer</option> <option value="resultats_analyses"<?if($objet=="resultats_analyses") echo "selected"; ?>>Nouvelle analyse</option> <option value="types_sequences"<?if($objet=="types_sequences") echo "selected"; ?>>Nouveau type de sequence</option> <option value="types_analyses"<?if($objet=="types_analyses") echo "selected"; ?>>Nouveau type d'analyse</option> <option value="individus"<?if($objet=="individus") echo "selected"; ?>>Nouvel organisme</option> <option value="tissus"<?if($objet=="tissus") echo "selected"; ?>>Nouveau tissu</option> </select> <INPUT type="hidden" name ="action" value="ajouter"> <INPUT type="hidden" name="num_enr" value=""> <input type="submit" name="Submit" value="OK"> </form> <hr>
et requete_objet.php :<select name="objet" > <option value="ana_gene" <?if($objet=="ana_gene") echo "selected"; ?>>Analyses faites pour un gène donné</option> <option value="pri_type" <?if($objet=="pri_type") echo "selected"; ?> >Analyses faites pour un type d analyse donné</option> <option value="ana_pri" <?if($objet=="ana_pri") echo "selected";?> >analyses faites pour un primer donné </option> <option value="ana_per" <?if($objet=="ana_per") echo "selected"; ?> >analyses faites pour une personne donnée</option> <option value="ana_tech"<?if($objet=="ana_tech") echo "selected"; ?>>analyses faites en fonction d une technique donnée</option> <option value="pri_ana"<?if($objet=="pri_ana") echo "selected"; ?>>Primers utilisés en fonction d une analyse donnée</option> </select> <INPUT type="hidden" name ="action" value="ajouter"> <INPUT type="hidden" name="num_enr" value=""> <input type="submit" name="Submit" value="OK"> </form> <hr>
Voilà, dit moi si tu pige pas un truc
-
-
-
-
rhaaaa ! enfin ca marche ! 58 post pour y arrivé !
(n'oublie pas de cocher le post comme résolu)
:)
++ -
-
C'était pourtant pas bien compliqué, mais le plus dur c'est souvent de comprendre le probleme et ensuite de se comprendre tout le long...
Bon sur ce bon week end Sam
++
Précédent
- 1
- 2