Page 1 sur 1

Bouton lien vers liste deroulante

Posté : 31 janv. 2014, 12:12
par synergie
Bonjour,

Je dois, sur ma première page, créé un bouton qui va permettre d'arriver directement sur ma deuxième page contenant une liste deroulante dynamique.

Ma première page avec le bouton : (je vous épargne ce qu'il y a avant, je ne laisse que le bouton)

Code : Tout sélectionner

for ($t=1;$t<=24;$t++) { echo "<div id='cadreVlan'>"; echo $tabAffiche[$t]; if(strpos($tabAffiche[$t],"Fast")!== false) { echo "<input type='submit' name='btn1Int' id='btn1Int' value='Modifier'>"; } echo "</div>"; }
Ma deuxième page est un peu plus complexe. en effet, j'ai deux formulaires sur la page qui s'éxécute chacun après clique sur son bouton.

Code : Tout sélectionner

<form method="post"> <input type="submit" value="Modifier une seule interface" name="btn1Int"> </form> <form method="post"> <input type="submit" value="Modifier plusieurs interfaces" name="btnInts"> </form> <?php //Si modification d'une interface, exécution du formulaire ci-dessous if(isset($_POST["btn1Int"])){ ?> <body onload="return cacheTxt();"> <form method="post" action="confVlan.php" id="formUnVlan" onsubmit='return confirmFormUnVlan();'> <label for="lstInterface">Choix de l'interface : <select name="nomInterface" id="nomInterface" size="1" onchange='return afficheTxt();'> <?php for($i=1;$i<=24;$i++) { $selected=''; if($i==1) { $selected = "selected='selected'"; } echo "<option value=".$i." $selected>interface fastEthernet 0/".$i; echo "</option>"; } ?> </select> </label> <br /> <br /> <?php for($i=1;$i<=24;$i++) { ?> <div id='txtDesc<?php echo $i; ?>'> <label for='txtDesc<?php echo $i; ?>'>Description : <input type='text' name='txtDesc<?php echo $i; ?>' id='txtDesc<?php echo $i; ?>' value="<?php echo $_SESSION["description$i"]; ?>"> </label> </div> <div id='txtVlanData<?php echo $i; ?>'> <label for='txtVlanData<?php echo $i; ?>'>Nouveau Vlan Data : <input type='text' name='txtVlanData<?php echo $i; ?>' id='txtVlanData<?php echo $i; ?>' value="<?php echo $_SESSION["vlanData$i"]; ?>"> </label> </div> <div id='txtVlanVoice<?php echo $i; ?>'> <label for='txtVlanVoice<?php echo $i; ?>'>Nouveau Vlan Voice : <input type='text' name='txtVlanVoice<?php echo $i; ?>' id='txtVlanVoice<?php echo $i; ?>' value="<?php echo $_SESSION["vlanVoice$i"]; ?>"> </label> </div> <?php } ?> <input type="submit" name="btnValid" value="OK"> </form> </body> <?php } ?>
Ca que je veux donc faire est donc, après clique sur modifier, pouvoir arriver sur la liste déroulante.
Exemple : Je suis sur le bouton modifier de la div 5, je dois arriver sur la liste déroulante.

Je suis encore novice, et j'aimerais avoir quelques pistes, si possible.. J'ai pensé à javascript justement, d'où mon poste ici.

Merci d'avance.

Re: Bouton lien vers liste deroulante

Posté : 31 janv. 2014, 13:08
par sirakawa
Je comprends mal pourquoi il n'y a pas deux boutons dans la page qui appelle, un pour modifier une fois, un pour modifier deux fois.
Je propose ci-dessous une version que je trouve plus lisible du début:
<?php 
//Si modification d'une interface, exécution du formulaire ci-dessous
if(!isset($_POST["btn1Int"])){
	$chaine = "
		<body onload='return cacheTxt();'>
			<form method='post' action='confVlan.php' id='formUnVlan' onsubmit='return confirmFormUnVlan();'>
  				<label for='lstInterface'>Choix de l'interface : </label>";
				$select_liste ="
  					<select name='nomInterface' id='nomInterface' size='1' onchange='return afficheTxt();'>
					<option value='.1.' selected = 'selected'>interface fastEthernet 0/.1</option>";
				for($i=2;$i<=24;$i++)
    			{
     				$select_liste .= "<option value='.$i.'>interface fastEthernet 0/.$i</option>";
           		}
 				$select_liste .= "</select>";
	print "$chaine $select_liste";
}
?>

Re: Bouton lien vers liste deroulante

Posté : 31 janv. 2014, 13:14
par synergie
Parce que je propose de pouvoir modifier une interface ou alors plusieurs interfaces, soit 2 formulaires différents.

Moi, je ne veux interagir uniquement que sur le premier formulaire.

Ps : merci pour les corrections.

Re: Bouton lien vers liste deroulante

Posté : 31 janv. 2014, 13:26
par sirakawa
A vue de nez:
$passage = isset($_POST['passage']) ? $_POST['passage'] : 1;
switch ($passage)
{
case 1:
     formulaire 1 comprenant un
    <input type = 'hidden' name = 'passage' value = '2' />
   break;
case 2:
formulaire 2
break;
}

Re: Bouton lien vers liste deroulante

Posté : 31 janv. 2014, 13:58
par synergie
Voilà ce que j'ai essayé de faire : simuler un clique en js

[javascript]<script type="text/javascript">

function modifVlan()
{
window.location="frmConfVlan.php";
document.getElementById("btn1Int").elements.btn1Int.click();
}
</script>[/javascript]

Cela fonctionne bien sous firebug, mais une fois dans le script, il s'arrête à la location.