Récupération Option Select

Photographiquement Votre
Invité n'ayant pas de compte PHPfrance

26 févr. 2010, 15:32

Bonjour,

J'ai un formulaire de renseignement avec un select. (voir code ci-desous)

Je voudrai récupérer le texte (ex Stage Beauté) pour l'intégrer dans un mail mais je n' y arrive pas

Merci pour votre aide

Mon code

<?php 
echo("<?xml version=\"1.0\" encoding=\"iso-8859-1\"?>\n"); 
?> 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" xml:lang="fr" /> 
<title>Contacter Hervé DUNOYER Photographe Mode Beauté</title>
<meta name="keywords" content="Photographe, mode, book, casting, paris, realisation, creation, press-book, photographe, book mode, realisation de press-book mode, beaut&eacute;, photographe paris." />
<meta name="description" content="Merci d utiliser cette page pour prendre contact avec moi />  
<meta name="robots" content="index,follow" />
<meta name="revisit-after" content="1 days" />
<meta name="classification" content="Photographe beauté" />
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />

<link href="librairie/CSS/style_book.css" rel="stylesheet" type="text/css" media="all" />

<script language="javaScript" src="librairie/Javascript/fonctionsJS_contact.js" /></script>

<script type="text/javascript">

	function change_valeur() {
		
	var stage=	this.form.elements['choixstage'].options[this.form.elements['choixstage'].selectedIndex].value ;

	return stage;
}

</script>


</head>

<body>

<div id="topstrip">
<!-- Fin du div topstrip --> 
</div>

<div id="topnav">

<?php

$pageName = "Stage";

include ("templates/haut.php");

require ("config.php");

?>

<!-- Fin du div topnav --> 
</div>

<div id="pagetext">

<table border="0" cellspacing="0" cellpadding="0">
    <tr>
      <td class="col01">
 
      <div id="sidenav">
      
<?php

include ("templates/cote_stage.php");

?>
<!--- Fin Div sidenav --->
 </div>
      </td>
      
      <td class="col02">
      
  <div id="contentTable">

<?php

$page= $_SERVER["PHP_SELF"];

$adminemail="[email protected]";

// si le bouton Envoi a été cliqué, on envoie l'email et on affiche sur la page un message d'envoi
if (isset($_POST['envoi'])) 
	{
		$nomutilisateur    = isset($_POST['nom'])    ? trim($_POST['nom'])    : ""; 
		$prenomutilisateur = isset($_POST['prenom']) ? trim($_POST['prenom']) : ""; 
		$mailutilisateur   = isset($_POST['email'])  ? trim($_POST['email'])  : ""; 
		$messageutilisateur = isset($_POST['message']) ? trim($_POST['message']) : ""; 

		//MON PROBLEME
				$stageutilisateur = isset($_POST['stage']) ? trim($_POST['stage']) : ""; 
		
		$nom1    = isset($_POST['nom1'])    ? trim($_POST['nom1'])    : ""; 
	
		
	
	
	if(empty($nom1)) 
		{
		//Envoi automatique de l'email  
   		
   		$sujet    = "Contact"; 
   		$corps  = "Nom: ".$nomutilisateur."\r\n"; 
   		$corps .= "Prénom: ".$prenomutilisateur."\r\n"; 
   		$corps .= "Message: ".$messageutilisateur."\r\n"; 
   		$entete = "From: ".$mailutilisateur ."\r\n"; 
    	
   		
   			
   		//mail($adminemail,$sujet,$corps, $entete); 
   		
    		
?>
   		<p class=centre id="rep">Merci d'avoir envoyé le mail</p>  
   		 <!--		<p class=centre>Le message a été envoyé</p>  --> 
   		<p class=centre><a href="<?= $page ?>">Retourner sur la page Renseignements</a></p>  

<?php
  		}	

	} 
//si le bouton n'est pas cliqué, on affiche le formulaire
			else 
	{
			
?>			

 

<h1 ><?php echo TXT_CONTACT; ?></h1>

 <table  >

 <form id="form_contact" action="<?php echo($_SERVER['PHP_SELF']); ?>" method="post" onsubmit="return validFormulaire_contact();"> 

	<td><?php echo TXT_CONTACT_NOM; ?><br></td>
	<td><input type="text" name="nom" id="nom" value="" size="35" maxlength="50"><br></td>
	
</tr>
<tr>
	<td><?php echo TXT_CONTACT_PRENOM; ?><br></td>
	<td><input type="text" name="prenom" value="" size="35" maxlength="50"><br></td>
</tr>
<tr>
	<td><?php echo TXT_CONTACT_EMAIL; ?><br></td>
	<td><input type="text" name="email" value="" size="35" maxlength="100"><br></td>
</tr>

<tr>
	<td><?php echo TXT_CONTACT_STAGE; ?><br></td>

	<td>
<select name="choixstage" onchange="change_valeur();">
				<option value="-">Choisissez un stage...</option> 
				<option value="beaute">Stage Beauté</option> 
				<option value="lingerie">Stage Lingerie</option>
				<option value="nu">Stage Nu</option>   
				<option value="still">Stage Natures Mortes</option> 
	</select>
	
	</td>
	
</tr>	

<tr>
	<td valign="top"><?php echo TXT_CONTACT_MESSAGE; ?><br></td>
	
	<td><textarea name="message" rows="8" cols="50"></textarea><br></td> 
</tr>




<td><textarea name="nom1" style="display:none;"  rows="8" cols="50"></textarea><br></td> 

<tr>
	<td>&nbsp;<br></td>
	
	<td><input type="submit" name="envoi" value="<?php echo TXT_CONTACT_SOUMETTRE; ?>" /><input type="reset" name="annuler" id="annuler" value="<?php echo TXT_CONTACT_EFFACER; ?>" /> <br></td>
</tr>

</form>
</table>

<!--- Fin div contentTable -->
</div> 

<!-- Fin du div pagetext --> 
</div>



<?php
	//include ("./templates/bas.php");
	
?>	 


<!--- Fin div Coeur -->
</div>

<!-- Fin du div site -->
 </div>	

<?php

	}


?>

</body>

</html>	
	
	
	
			 	 


Modérateur PHPfrance
Modérateur PHPfrance | 6373 Messages

26 févr. 2010, 15:56

Fais du debug simple, avec de l'affichage.

Tes variables renvoyées par un formulaire en post sont contenues dans le tableau $_POST
Donc avec un print_r($_POST), tu verras déjà ce qui est transmis. Si ta variable $_POSt['stage'] est vide, c'est qu'il y a déjà un problème en amont, un problème de nommage par exemple...

Mammouth du PHP | 985 Messages

26 févr. 2010, 15:59

J'étais partis pour répondre:
http://www.phpdebutant.org/article56.php
Face à la roche, le ruisseau l'emporte toujours, non pas par la force mais par la persévérance.

Invité
Invité n'ayant pas de compte PHPfrance

26 févr. 2010, 16:09

Fais du debug simple, avec de l'affichage.

Tes variables renvoyées par un formulaire en post sont contenues dans le tableau $_POST
Donc avec un print_r($_POST), tu verras déjà ce qui est transmis. Si ta variable $_POSt['stage'] est vide, c'est qu'il y a déjà un problème en amont, un problème de nommage par exemple...

Merci

Je récupère bien la valeur mais ce que je veux récupérer c'est le texte (ex Stage Beauté) en passant par Javascript

Mammouth du PHP | 985 Messages

26 févr. 2010, 16:17

Comme expliqué dans le lien que j'ai donné plus haut, la valeur c'est ce que contient value.
Face à la roche, le ruisseau l'emporte toujours, non pas par la force mais par la persévérance.

Invité
Invité n'ayant pas de compte PHPfrance

26 févr. 2010, 16:22

Oui j'ai bien compris mais ce n'est pas la valeur value que je veux mais le texte en passant par javascript.

La valeur value je la récupère sans problème

ViPHP
ViPHP | 2287 Messages

26 févr. 2010, 16:25

innerHtml à la place de value ;) (attention au H majuscule)
if(!@work()){ Nespresso(); } else { what(); }
______________________________

Mammouth du PHP | 985 Messages

26 févr. 2010, 16:28

Ben oui mais pourquoi ne pas utiliser le texte en tant que value à ce moment là, serait bien plus pratique :wink:
Ou assigner le texte si tu reçois la valeur correspondante...
Mais bon j'imagine, que tu as tes raisons.
Face à la roche, le ruisseau l'emporte toujours, non pas par la force mais par la persévérance.

Invité
Invité n'ayant pas de compte PHPfrance

26 févr. 2010, 17:10

J'ai effectivement mis la même chose pour la value et le texte

Merci à tous les deux