Menu déroulant avec un lien

Nina -  
 Nina -

Bonjour ,
j'ai un problème : voici mon code :un menu déroulant avec un lien mais sans java script

<tr> 
      <td width="117" height="42">     Matricule</td> 
    
   <input name="id" id="id" type="text"   size="25 " ?>"  

   </td> 
   </tr>     
 <td width="117" height="42">Ville départ </td> 
    
   <input name="villed" id="villed" type="text"  size="25 "onKeyUp="javascript:couleur(this);"/> 
    
   </td> 
   </tr><select name="tra"  id="tra" >  <option > Transport</option>  
    <option value="vol"> <a href="vol.php">vol</option>  
    <option value="train"><a href="train.php"> Train</option>  
   </select> 
<input type="image" name="imageField" src="images/inserer.gif"  class="modifier-submite"/></td> 

voici mon code si tu peux m'aider que je doit mettre dans ma page redirection en php
Merci D'avance.
A voir également:

1 réponse

ReDLoG
 
Bonsoir,
Sans javascript, tu ne pourras pas faire de redirection à partir de ta liste déroulante et au vu de ton code tu es obligé de récupérer les données du formulaire dans un script PHP.
0
Nina
 
Bonsoir ,J'ai déjà essaye le java script mais j'ais le problème d'insertion dans la base de données
<html><form onsubmit="window.open(document.getElementById('tra').value)" >

    <tr>
	 <td width="117" height="42">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Matricule</td>
      <td width="196">
	  <input name="id" id="id" type="text"   size="25 " value="" /> 
	  </td>
	  </tr>    
 <td width="117" height="42">Ville départ </td>
      <td width="196">
	  <input name="villed" id="villed" type="text"  size="25 "/>
	  
	  </td>
	<td width="117" height="42">Transport: </td>
      <td width="196">
	  
	      
		  <select name="tra" id="tra">
		  <option > choisissez</option> 
		  <option value="train.php"> train</option> 
		  <option value="vol.php"> vol </option>
  
</select>
<input type="image" name="imageField" src="inserer.gif"  class="modifier-submite"/>
</html>

voici ma page train.php:
<?php $id=$_POST['id'];
$villed=$_POST['villed'];

 $tra=$_POST['tra'];
 
$db= mysql_connect('localhost','root','');
mysql_select_db('choix_transport',$db);
$sql="INSERT INTO choix_transport(id,villed,tra)VALUES('$id','$villed','$tra')";
$req=mysql_query($sql) or die('Erreur dans la requete SQL !<br>'.$sql.'<br>'.mysql_error());
mysql_close();
?>

et voici le problème que j'ai rencontré
( ! ) Notice: Undefined variable: id in C:\wamp\www\projet\train.php on line 6
( ! ) Notice: Undefined variable: villed in C:\wamp\www\projet\train.php on line 7
( ! ) Notice: Undefined variable: tra in C:\wamp\www\projet\train.php on line 8

Merciiiiiiiiiiiiiiii d'avance
0
ReDLoG
 
Au vu des messages d'erreur PHP, lorsque tu arrives sur la page train.php, les valeurs du formulaire n'ont pas été transmises car tu n'as pas doté la balise FORM de son attribut ACTION, genre ceci :
<form method="post" action="train.php">

Or tu as fait ceci :
<form onsubmit="window.open(document.getElementById('tra').value)">
0
Nina
 
Merci ,oui parce que j'ai deux choix soit sur vol.php ou train.php c pour cela je n'est pas mis l'action
si tu as une proposition a me la donner
Merciiiiiiiiii D'avance
0
ReDLoG
 
Ben si tu as le choix du train ou du vol, pas la peine d'ouvrir une nouvelle fenêtre pour exécuter ton script, suffit de faire tout dans la même page. Tu mets le script PHP dans la même page que le formulaire, juste avant la balise HTML comme ceci :
<?php
if(isset($_POST['imageField'])) {
	$id=$_POST['id'];
	$villed=$_POST['villed'];
	$tra=$_POST['transport'];

	$db= mysql_connect('localhost','root','');
	mysql_select_db('choix_transport',$db);
	$sql="INSERT INTO choix_transport(id,villed,tra)VALUES('$id','$villed','$tra')";
	$req=mysql_query($sql) or die('Erreur dans la requete SQL !<br>'.$sql.'<br>'.mysql_error());
	mysql_close();
}
?><html>
<head>
	<title>Page de ton formulaire HTML</title>
</head>

<body>
<form method="post" action="nom_de_ta_page_du_formulaire.php">
	<table>
		<tr>
	 		<td width="117" height="42">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Matricule</td>
			<td width="196"><input name="id" id="id" type="text" size="25" value="" /></td>
		</tr><tr>  
			<td width="117" height="42">Ville départ </td>
			<td width="196"><input name="villed" id="villed" type="text" size="25" value="" /></td>
		</tr><tr>
			<td width="117" height="42">Transport: </td>
			<td width="196">
				<select name="transport" id="transport">
					<option value=""> choisissez... </option> 
					<option value="train"> train </option> 
					<option value="vol"> vol </option>
				</select>
				<input type="image" name="imageField" src="inserer.gif" class="modifier-submite" />
			</td>
		</tr>
	</table>
</form>
</body>
</html>
0
Nina
 
Mais il faut avant la validation de formulaire ,il faut choisir soit train.php soit vol.php, si je sélectionne train je vais sur train.php si je sélectionne vol je vais sur vol.php
si je suis pas très clair dit moi
0