Page 1 sur 1

probleme d'envoi de mail

Posté : 30 août 2010, 11:09
par doud18
bonjour à tous,

je suis en train de créer un envoil de mail en réponse à un formulaire :

Mon formulaire :
<form enctype="multipart/form-data" name="fcoord" method="post" action="<?php echo htmlentities($_SERVER['PHP_SELF']); ?>">

<table width="500" border="0" cellspacing="2" cellpadding="2">
 <tr><td align=right>
   Genre :
 </td><td> 
 	<?php
 	echo "<select name=\"genre\">";
  	echo ligne_selected(" ","-1",$frm['genre']);
 	echo ligne_selected("Monsieur","Monsieur",$frm['genre']);
 	echo ligne_selected("Madame","Madame",$frm['genre']);
 	echo ligne_selected("Mademoiselle","Mademoiselle",$frm['genre']);
	echo "</select>";
 	?>
 </td></tr>
  <tr> 
  <td align=right>Sexe : </td>
	<TD>
	18/30 ans : <INPUT type=radio name="age" value="18/30 ans">
	 30 et + : <INPUT type=radio name="age" value="30 et +">
      * <?php if (isset($erreurs['age'])) echo $message_erreur['age'] ?>
	</td>
</tr>
<tr>
    <td align=right>Nom : </td>
    <td><input name="nom" type="text" value="<?php if (isset($frm['nom'])) echo stripslashes($frm['nom']); ?>"></td>
  </tr>
  <tr> 
    <td align=right>Prenom : </td>
    <td><input name="prenom" type="text" value="<?php if (isset($frm['prenom'])) echo stripslashes($frm['prenom']) ?>">
        * <?php if (isset($erreurs['prenom'])) echo $message_erreur['prenom'] ?></td>
  </tr>
  <tr> 
    <td align=right>Adresse : </td>
    <td><input name="adresse1" type="text"  value="<?php if (isset($frm['adresse1'])) echo stripslashes($frm['adresse1']); ?>"></td>
  </tr>
  <tr> 
    <td align=right>&nbsp; </td>
    <td><input name="adresse2" type="text" value="<?php if (isset($frm['adresse2'])) echo stripslashes($frm['adresse2']); ?>"></td>
  </tr>
  <tr> 
  <script language="javascript">
<!--

function afficheVille(size, cp) {
    if (cp.length > size-1) {
	 maRequete.request("action=affVille&codepostal="+cp); }
}
maRequete=new loader("ajax_carte.php");

function loader(url){
	this.url=url;
	if(typeof XMLHttpRequest!="undefined"){this.http=new XMLHttpRequest();
	}else if(typeof ActiveXObject!="undefined"){this.http=new ActiveXObject("MSXML2.XmlHttp");
	}else{alert("No XMLHttpRequest object available. This functionality will not work.");}
}
loader.prototype.request=function(postReq){
	var oHttp=this.http;
	if (oHttp.readyState!=0){oHttp.abort();}
	oHttp.open("POST",this.url,true);
	oHttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded; charset=UTF-8');
	oHttp.onreadystatechange=function(){
		if (oHttp.readyState==4){
		

			var reponsePHP=oHttp.responseText;

			window.eval(reponsePHP);
			
		} else {
		//document.getElementById("chargement").innerHTML = "<img src='images/ajax-loader.gif' alt=''/>Chargement en cours ...<br />";
		}
	};
	oHttp.send(postReq);
};
// -->
</script>
    <td align=right>Code postal : </td>
    <td><input name="codepostal" type="text" size="5" maxlength="5" value="<?php if (isset($frm['codepostal'])) echo stripslashes($frm['codepostal']); ?>" onKeyUp="afficheVille(this.size, this.value)"/></td>
  </tr>
  <tr> <td></td>
  </tr>
  <tr>
  
    <td align=right>Ville : </td>
    <td><span id="listeville"></span></td>
  </tr>
 <tr> 
    <td align=right>Email : </td>
    <td><input name="email" type="text" value="<?php if (isset($frm['email'])) echo stripslashes($frm['email']); ?>">
       * <?php if (isset($erreurs['email'])) echo $message_erreur['email'] ?></td>
  </tr>
  <tr> 
    <td align=right>T&eacute;l&eacute;phone : </td>
    <td><input name="tel" type="text" value="<?php if (isset($frm['tel'])) echo stripslashes($frm['tel']); ?>">*
 <?php if (isset($erreurs['tel'])) echo $message_erreur['tel'] ?></td></td>
  </tr>
  <tr> 
    <td align=right>Portable : </td>
    <td><input name="portable" type="text" value="<?php if (isset($frm['portable'])) echo stripslashes($frm['portable']); ?>">*
 <?php if (isset($erreurs['portable'])) echo $message_erreur['portable'] ?></td>
  </tr>
  <tr>
<script type="text/javascript">
	$(function() {
		$('#datepicker').datepicker({
			changeMonth: true,
			changeYear: true
		});
	});
	</script>

 <td align=right>Date d'anniversaire:</td>  <td><input name="date" type="text" id="datepicker" value="<?php if (isset($frm['date'])) echo stripslashes($frm['date']); ?>"></td>
  </tr>
  <tr> 
    <td align=right>Photo : </td>
    <td> 
    <input type="hidden" name="MAX_FILE_SIZE" value="<?php echo $taille_max; ?>" >
<input name="fichier" type="file" >
</td>
  </tr>
  <tr> 
    <td colspan=2><br /><hr><br /></td>
  </tr> 
  <tr> 
       <td align=right>Observation : </td>
    <td><textarea name="observation" cols="40" rows="3"><?php if (isset($frm['observation'])) echo stripslashes($frm['observation']); ?></textarea></td>
  </tr>
<td>
 Il(elle) est geek de quoi? :</td>
<td>
<?php 
//$colors = array(jaune,bleu,vert,orange,rouge);
///for($i=0;$i<sizeof($colors);$i++){

//echo"<input type='checkbox' name='couleur[]' value='".$colors[$i]."'>".$colors[$i]."<br>";
//}?>
 <input type="checkbox" name="jaune" id="css" value="jaune" /> Css/Html<br />
       <input type="checkbox" name="bleu" id="as" value="bleu" /> AS3, AS2, AS<br />
       <input type="checkbox" name="vert" id="php"  value="vert"/> PHP/MYSQL, Oracle, Synphony,..<br />
       <input type="checkbox" name="orange" id="java"  value="orange"/>Jquery, Java, Moontools, Prototype
</td>
   <tr> 
<td> Newsletters?</td>

<td> <input type="checkbox" name="case" value="oui"> (cocher la case si vous voulez recevoir la news)*

</td>
</tr>
    <td colspan=2><br /><hr><br /></td>
  </tr> 
   <tr> 
    <td>Captcha</td> 
	<td><img src="include/fct_captcha.inc.php">
 <input type='text' name='textCaptcha' size='10'> * 
 <?php if (isset($erreurs['textCaptcha'])) echo $message_erreur['textCaptcha'] ?></td>
  </tr> 
   <tr> 
    <td colspan=2><br /><hr><br /></td>
  </tr> 
  <tr> 
    <td colspan="2" align=center>
        <input type="submit" name="action" value="Confirmer">
        <input type="submit" name="action" value="Annuler">
      </td>
  </tr>
</table></form>
et le fichier mail :
<?php
//declare our variables
$genre = $_POST['genre'];
$age =  $_POST['age'];
$nom =  $_POST['nom'];
$prenom =  $_POST['prenom'];								
$adresse =  $_POST['adresse1'];
$code =  $_POST['codepostal'];
$ville= $_POST['ville'];
$email =  $_POST['email'];
$port =  $_POST['portable'];
$date =  $_POST['date'];
$v1 =  $_POST['jaune'];
$v2 =  $_POST['bleu'];
$v3 =  $_POST['vert'];
$v4 =  $_POST['orange'];
$case =  $_POST['case'];




$subject = "Créations de compte";
$entete= "";
$body = "<img src=\"http://www.machiens/images/logo.png\"><br/><br/><br/>
Bonjour et bienvenue $prenom sur le site <a href=\" http://www.imachiens.com\">imachiens</a>, <br /><br /> 
  voici le rappel de votre compte que vous pouvez à tout moment consulter :<br />
<style =\"width : 400px; border: 3px solid red;\"><br /><br />
    <b>Genre</b> : $genre <br/>
	<b>Age</b> : $age <br/>
    <b>Nom</b> : $nom <br/>
  <b>Prénom</b> : $prenom <br/>
    <b>Adresse</b> : $adresse <br/>
	  <b>Code postal</b> : $code<br/>
	   <b>Ville</b> : $ville<br/>
	   <b>Email</b> : $email<br/>
	   <b>Portable</b> : $port<br/>
    <b>Date de naissance</b> : $date<br/>
	<b>Geek de quoi?</b> : $v1, $v2, $v3, $v4.<br/>
   <b>Newsletters</b> : $case<br/> <br/><br/>
   
   Retrouvez nous à tout moment sur notre site. merci de votre visite" ;
    


$headers = 'From : '.$entete.'' . "\r\n" .
    'Reply-To: '.$email.'' . "\r\n" .
	'Content-type: text/html; charset=utf-8' . "\r\n" .
    'X-Mailer: PHP/' . phpversion();

mail("mon [email protected]", $subject, $body, $headers);
?>

le probleme c'est que lorsque je ckic sur le menu pour arriver a cette page j'ai une envoie de mail dèja. Ensuite quend je rempli le formulaire et que je l'envoie rien n'arrive

est ce que vous pourriez me dire pourquoi?

Merci

Re: probleme d'envoi de mail

Posté : 30 août 2010, 13:02
par Aureusms
Tu n'a pas fais de if(). en clair ton mail partira toujours...
Essaye de corriger cela avec un :
if(isset($_POST) && !empty($_POST))
{

Re: probleme d'envoi de mail

Posté : 30 août 2010, 15:54
par doud18
Bien sur quand je valide mon formulaire il me faut une condition qui me permet de dire tout est ok les champs sont bien remplis maintenant je peux enoyer mon mail.


Merci je débute dans le php depuis 2 mois

Ce qui donne pour infos :


 if(isset($_POST['age']) && !empty($_POST['age']) && isset($_POST['prenom']) && !empty($_POST['prenom']) && isset($_POST['email']) && !empty($_POST['email']) && isset($_POST['portable']) && !empty($_POST['portable']))
{if ($_SESSION['textCaptcha'] = $frm['textCaptcha']) 
	{

Re: probleme d'envoi de mail

Posté : 30 août 2010, 18:13
par doud18
Ce que je ne comprends pas dans l'envoi de mail c'est que lorsque je protège les données du genre : htmlentities($frm['nlogin'])

Est ce je dois le redefinir lors de l'envoi : $envoi = htmlentities($frm['nlogin']) et reutliser la variable :$envoi


Merci de m'aider car l'envoi de mail n'a jamais ete tres simple pourtant...