l'envoi des données par mail ne fonctionne pas.

Eléphant du PHP | 57 Messages

21 mai 2007, 18:06

Bonjour, j'ai créé ma page contact.php qui contient un formulaire. J'ai créé également une page formulaire.php qui reprend les informations laissées par le visiteur. Par contre, je n'arrive absolument pas à m'envoyer (en test) le formulaire sur ma boite mail.
J'ai énormément potassé de documentation, mais n'arrive pas à voir où le bas blesse. Quelles sont les informations à indiquer , sur quelle page et quel est le test que je pourrai faire (easyphp) pour m'assurer que tout fonctionne.
Merci par avance
Il faut oser d'abord, doser ensuite

Eléphant du PHP | 120 Messages

21 mai 2007, 18:26

c pas sorcier il faut que tu te documente sur la fonction mail() de php
et essaie de faire un test banal comme ceci pour voir si ça fonctionne ou pas

Code : Tout sélectionner

mail("ton_adresse_mail","sujet test","message test")

Eléphant du PHP | 57 Messages

21 mai 2007, 18:33

Bonsoir,
Je veux bien faire un test, mais j'utilise easyphp, quel est l'adresse e-mail à indiquer : celle que j'utilise couramment par le service NOOS?
Il faut oser d'abord, doser ensuite

Eléphant du PHP | 120 Messages

21 mai 2007, 18:38

tu peux utiliser n'importe quelle adresse active prend ton adresse personelle par exemple :)

Eléphant du PHP | 57 Messages

21 mai 2007, 18:44

Je te montre ma page contact où est le formulaire en question (surtout ne lis pas tout, je voudrais juste savoir où je met l'insertion mail

Code : Tout sélectionner

<?php echo "<?xml version=\"1.0\" encoding=\"iso-8859-1\"?".">"; ?> <!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" > <head> <title> CONTACT </title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <link rel="stylesheet" media="screen" type="text/css" title="Contact" href="contact.css" /> </head> <body> <div id="en_tete"> <!--BANNIERE--> </div> <div id="bordure"> </div> <div id="menu"> <!--MENU--> <div class="element_coordonnee"> <h3><!--SOUS TITRE COORDONNEE--> <dl> <dt>06.24.58.06.36.</dt><br/> <dt>02.38.84.31.23.</dt><br/> <dt><a href="mailto:[email protected]">[email protected]</a></dt><br/> </h3> </dl> </div> <div class="element_sommaire"> <h3><!--SOUS TITRE SOMMAIRE--> <dl> <dt><a href="index.php">Présentation</a></dt> </h3> </dl> </div> <div class="element_services"> <h3><!--SOUS TITRE services--> <dl> <dt><a href="services.php">Services</a></dt> </h3> </dl> </div> <div class="element_avantages"> <h3><!--SOUS TITRE avantages--> <dl> <dt><a href="avantages.php">Avantages</a></dt> </h3> </dl> </div> <div class="element_modalites"> <h3><!--SOUS TITRE modalites--> <dl> <dt><a href="modalites.php">Modalités</a></dt> </h3> </dl> </div> <div class="element_tarif"> <h3><!--SOUS TITRE tarif--> <dl> <dt><a href="tarif.php">Tarif</a></dt> </h3> </dl> </div> <div class="element_contact"> <h3><!--SOUS TITRE contact--> <dl> <dt><a href="contact.php">Contact</a></dt> </h3> </dl> </div> </div> <body> <form action="formulaire.php" method="post"class="css" > <fieldset> <strong><h3><center> FORMULAIRE DE CONTACT </center></strong></h3> <div class="eco">Si vous êtes intéressé(e) ou si vous souhaitez simplement des informations complémentaires,<br/> Remplissez le formulaire ci-après.</div> </fieldset> <br /> <div class="eco"> <h3><center> Nous nous ENGAGEONS A VOUS CONTACTER dans les plus brefs délais. </h3></center></div> <fieldset> <legend><strong> 1. Vos Coordonnées </strong></legend> <h3><p><label for ="denomination">Entreprise&nbsp;: </label></p> <input type="text" name="denomination" id="denomination" size="40" maxlength="40" value="" /> <br /> <p><label for ="fonction">Fonction&nbsp;: </label></p> <input type="text" name="fonction" id="fonction" size="40" maxlength="40" value="" /> <br /> <p><label for ="nom">Nom&nbsp;: </label></p> <input type="text" name="nom" id="nom" size="40" maxlength="40" value="" /> <br /> <p><label for ="prenom">Prénom&nbsp;: </label></p> <input type="text" name="prenom" id="prenom" size="40" maxlength="40" value="" /> <br /> <p><label for ="adresse">Adresse&nbsp;: </label></p> <input type="text" name="adresse" id="adresse" size="40" maxlength="40" value="" /> <br /> <p><label for ="adresse_suite">Adresse suite&nbsp;: </label></p> <input type="text" name="adresse_suite" id="adresse_suite" size="40" maxlength="40" value="" /> <br /> <p><label for ="code_postal">Code postal&nbsp;: </label></p> <input type="text" name="code_postal" id="code_postal" size="5" maxlength="5" value="" /> <br /> <p><label for ="commune">Ville&nbsp;: </label></p> <input type="text" name="commune" id="commune" size="40" maxlength="40" value="" /> <br /> <p><label for ="telfixe">Téléphone fixe&nbsp;: </label></p> <input type="text" name="telfixe" id="telfixe" size="11" maxlength="10" value="" /> <br /> <p><label for ="telport">Portable&nbsp;: </label></p> <input type="text" name="telport" id="telport" size="11" maxlength="10" value="" /> <br /> <p><label for ="Email">E-mail&nbsp;: </label></p> <input type="text" name="email" id="email" size="40" maxlength="40" value="" /> <br /></h3> </fieldset> <br/> <fieldset> <legend><strong>2. Message : </strong></legend> <textarea cols="50" rows="10" name="message" ></textarea> </fieldset><br/> <input type="reset" value="Rétablir" tyle="background-color:#c9a54b" title="Envoi de votre message" onmouseover="this.style.color='#ff0000'" onmouseout="this.style.color='#000000'" onmousedown="this.style.color='#ff9900'"/> <input name="soumettre" type="submit" value="Envoi"alt="Envoi" style="background-color:#c9a54b" title="Envoi de votre message" onmouseover="this.style.color='#ff0000'" onmouseout="this.style.color='#000000'" onmousedown="this.style.color='#ff9900'"/> <br /> <br /> <fieldset> <legend><strong>A noter : </strong></legend> <i> Conformément à l'art. 34 de la loi "Informatique et Libertés" du 6 janvier 1978, vous disposez d'un droit d'accès, de modification, de rectification et de suppression des données vous concernant que vous pouvez exercer par courriel.</i> </fieldset><br /> </form> </div> </div> </body> </html>
et d'autre part la page formulaire.php qui me permet de récupérer les données.
<?php echo "<?xml version=\"1.0\" encoding=\"iso-8859-1\"?".">"; ?>
<!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" >
   <head>
   <title> CONTACT </title>
       <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
       <link rel="stylesheet" media="screen" type="text/css" title="Contact" href="contact.css" />
   </head>
   <body>
        <div id="en_tete">
           <!--BANNIERE-->
        </div>
		<div id="bordure">
			
		</div>	
		<div id="menu">
           <!--MENU-->
				<div class="element_coordonnee">
					<h3><!--SOUS TITRE COORDONNEE-->
						<dl>
							<dt>06.24.58.06.36.</dt><br/>
							<dt>02.38.84.31.23.</dt><br/>
							<dt><a href="mailto:[email protected]">[email protected]</a></dt><br/>
					</h3>
						</dl>
				</div>
				<div class="element_sommaire">
					<h3><!--SOUS TITRE SOMMAIRE-->
						<dl>
							<dt><a href="index.php">Présentation</a></dt>
					</h3>
						</dl>
				</div>
				<div class="element_services">
					<h3><!--SOUS TITRE services-->
						<dl>
							<dt><a href="services.php">Services</a></dt>
					</h3>							
						</dl>
				</div>
				<div class="element_avantages">
					<h3><!--SOUS TITRE avantages-->
						<dl>
							<dt><a href="avantages.php">Avantages</a></dt>
					</h3>							
						</dl>
				</div>
				<div class="element_modalites">
					<h3><!--SOUS TITRE modalites-->
						<dl>
							<dt><a href="modalites.php">Modalités</a></dt>
					</h3>							
						</dl>
				</div>
				<div class="element_tarif">
					<h3><!--SOUS TITRE tarif-->
						<dl>
							<dt><a href="tarif.php">Tarif</a></dt>
					</h3>							
						</dl>
				</div>
				<div class="element_contact">
					<h3><!--SOUS TITRE contact-->
						<dl>
							<dt><a href="contact.php">Contact</a></dt>
					</h3>							
						</dl>
				</div>
		</div>
	
<body>

<form action="formulaire.php" method="post"class="css" 
>
<fieldset>
	<strong><h3><center> FORMULAIRE DE CONTACT </center></strong></h3>
<div class="eco">Si vous êtes intéressé(e) ou si vous souhaitez simplement des informations complémentaires,<br/>
					Remplissez le formulaire ci-après.</div>


</fieldset>
<br />
<div class="eco">
<h3><center> Nous nous ENGAGEONS A VOUS CONTACTER dans les plus brefs délais.
</h3></center></div>
  <fieldset>
		<legend><strong> 1. Vos Coordonnées  </strong></legend>
	
		<h3><p><label for ="denomination">Entreprise&nbsp;: </label></p>
          <input type="text" name="denomination" id="denomination" size="40" maxlength="40" value=""  />
        <br />

        <p><label for ="fonction">Fonction&nbsp;: </label></p>
          <input type="text" name="fonction" id="fonction" size="40" maxlength="40" value="" />
        <br />
		
		<p><label for ="nom">Nom&nbsp;: </label></p>
			 <input type="text" name="nom" id="nom" size="40" maxlength="40" value=""  />
        <br />

        <p><label for ="prenom">Prénom&nbsp;: </label></p>
			<input type="text" name="prenom" id="prenom" size="40" maxlength="40" value="" />
        <br />
		
		<p><label for ="adresse">Adresse&nbsp;: </label></p>
		   <input type="text" name="adresse" id="adresse" size="40" maxlength="40" value=""  />
        <br />

        <p><label for ="adresse_suite">Adresse suite&nbsp;: </label></p>
          <input type="text" name="adresse_suite" id="adresse_suite" size="40" maxlength="40" value="" />
        <br />
		
		<p><label for ="code_postal">Code postal&nbsp;: </label></p>
			
          <input type="text" name="code_postal" id="code_postal" size="5" maxlength="5" value=""  />
        <br />

        <p><label for ="commune">Ville&nbsp;: </label></p>
          <input type="text" name="commune" id="commune" size="40"  maxlength="40" value="" />
        <br />
		
		<p><label for ="telfixe">Téléphone fixe&nbsp;: </label></p>
          <input type="text" name="telfixe" id="telfixe" size="11" maxlength="10" value=""  />
        <br />

        <p><label for ="telport">Portable&nbsp;: </label></p>
          <input type="text" name="telport" id="telport" size="11" maxlength="10" value="" />
        <br />
		
		<p><label for ="Email">E-mail&nbsp;: </label></p>
          <input type="text" name="email" id="email" size="40" maxlength="40" value=""  />
        <br /></h3>
		 </fieldset>
		<br/>

 <fieldset>

		<legend><strong>2. Message : </strong></legend>
          <textarea cols="50" rows="10" name="message" ></textarea>
        </fieldset><br/>
   	<input type="reset" value="Rétablir" tyle="background-color:#c9a54b"  title="Envoi de votre message" onmouseover="this.style.color='#ff0000'" onmouseout="this.style.color='#000000'" onmousedown="this.style.color='#ff9900'"/>
 <input name="soumettre" type="submit" value="Envoi"alt="Envoi" style="background-color:#c9a54b"  title="Envoi de votre message" onmouseover="this.style.color='#ff0000'" onmouseout="this.style.color='#000000'" onmousedown="this.style.color='#ff9900'"/>
	<br />	<br />
  <fieldset>
		<legend><strong>A noter : </strong></legend>

		<i>
Conformément à l'art. 34 de la loi "Informatique et Libertés" du 6 janvier 1978, vous disposez d'un droit d'accès, de modification, de rectification et de suppression des données vous concernant que vous pouvez exercer par courriel.</i>
		</fieldset><br />

</form>
		</div>
	</div>

</body>
</html>
Ai-je oublié quelque chose, où , quelle est le bon script????????????????
Il faut oser d'abord, doser ensuite

Eléphant du PHP | 120 Messages

22 mai 2007, 09:24

je ne voi pas la page de traitement de ton formaulaire???
elle est où ??
le traitement php du formulaire ????

Eléphant du PHP | 57 Messages

22 mai 2007, 09:37

Bonjour rakzim,
effectivement, j'ai omis de donner ma page traitement. pour moi elle est nommée "formulaire.php".

Code : Tout sélectionner

<?php $email_webmaster = "[email protected]"; //debug code echo 'Var POST : '.count($_POST).'<pre>'; print_r($_POST); echo '</pre>'; echo 'Var GET : '.count($_GET).'<pre>'; print_r($_GET); echo '</pre>'; //fin debug //on récupère nos valeurs $denomination = $_POST['denomination']; $fonction = $_POST['fonction']; $nom = $_POST['nom']; $prenom = $_POST['prenom']; $adresse = $_POST['adresse']; $adresse_suite = $_POST['adresse_suite']; $code_postal = $_POST['code_postal']; $commune = $_POST['commune']; $telfixe = $_POST['telfixe']; $telport = $_POST['telport']; $email = $_POST['email']; $message = $_POST['message']; $prenom = $_POST['prenom']; $nom = $_POST['nom']; print("<center><strong>Bonjour $prenom $nom<br/><br/>Détails ci-dessous des données que vous nous transmettez :</center></strong>"); echo 'Nom : <strong>'.$nom.'</strong</br>'; echo 'Prenom : <strong>'.$prenom.'</strong</br></br>'; echo 'Entreprise : <strong>'.$denomination.'</strong></br>'; echo 'Fonction : <strong>'.$fonction.'</strong></br></br>'; echo 'Adresse : <strong>'.$adresse.'</strong</br>'; echo 'Adresse suite :<strong>'.$adresse_suite.'</strong</br>'; echo 'Code postal : <strong>'.$code_postal.'</strong</br>'; echo 'Commune : <strong>'.$commune.'</strong</br></br>'; echo 'Téléphone fixe :<strong> '.$telfixe.'</strong</br>'; echo 'Téléphone portable :<strong> '.$telport.'</strong</br>'; echo 'E-mail :<strong> '.$email.'</strong</br>'; $email = $_POST['email']; $point = strpos($email,"."); $aroba = strpos($email,"@"); if($point=='') { echo "Votre email doit comporter un <b>point</b><br/>"; } elseif($aroba=='') { echo "Votre email doit comporter un <b>'@'</b><br/>"; } else { echo "Votre email est: '<a href=\"mailto:"."$email"."\"><b>$email</b></a><br/> '"; } echo 'Message : '.$message.'</br></br>'; echo "<p class='vi4'>Votre demande a bien été envoyée à AS.AD.CO.<br/> Nous vous remercions pour l'intérêt que vous portez à notre activité et soyez assuré(e) que nous vous répondrons dans les plus brefs délais.</p>\n" ; echo "<form name='boutons'><table border='0' cellspacing='0' cellpadding='0' width='90%' align='center'><tr><td><center>" ; echo "<input type='button' name='Envoi' alt='Envoi' value=\<a href="contact.php">Contact</a>"Retour à la page d'accueil\" style='color:#660066;background-color:#ebe7f1' onclick=\" onmouseover=\"this.style.color='#ff0000'\" onmouseout=\"this.style.color='#660066'\" onmousedown=\"this.style.color='#ff9900'\" />\n"; ?>
Il faut oser d'abord, doser ensuite

Eléphant du PHP | 120 Messages

22 mai 2007, 14:47

ah voilà je préfère comme ça :P
donc la fonction mail() tu la met à la fin de ton traitement lorsque tu as fini de générer
ton message, ton sujet,...

Eléphant du PHP | 57 Messages

22 mai 2007, 15:49

donc avant
?>
mais sous quelle forme? j'ai consulté ton lien, ça ne me dit rien du tout, je ne comprends pas trop!!
Il faut oser d'abord, doser ensuite

Eléphant du PHP | 120 Messages

23 mai 2007, 14:21

tu deviens grave là :P
oui c juste avant le " ?> " de fin de page.
mail($email_webmaster,"Sujet du mail","corps du message que tu veux envoyer au webmaster");
ps: le corps du message peut être de type "texte" ou "html"

plus que ça je peux plus expliquer ;)
j'espère que je t aidé suffisament @+

Mammouth du PHP | 536 Messages

23 mai 2007, 15:45

si tu travailles en local, ce que j'ai cru comprendre, il me semble auss qu'il faut modifier ton fichier de configuration php et ainsi modifier ton port smtp avec celui de ton FAI.
Si je ne di pas de bêtise, ta fonction devrait marcher après.

A vérifier.
Un prof désespéré à son élève :
- Et maintenant, dessinez-moi un cercle au tableau... Voila... Alors qu'est-ce que c'est?
- Ben un cercle ?
- Non, c'est votre note, sortez !!

Eléphant du PHP | 57 Messages

23 mai 2007, 16:26

Bonjour,
Je vais essayer, j'essaie de peaufiner mes codes et j'envoie le tout, on verra si ça marche.
Merci pour ton aide.
Cordialement
Il faut oser d'abord, doser ensuite

Invité
Invité n'ayant pas de compte PHPfrance

24 mai 2007, 09:42

Tiens ! Un exemple concret rien de plus explicite

<?php 
 $email_webmaster = "[email protected]"; 
 //debug code echo 'Var POST : '.count($_POST).'<pre>'; print_r($_POST); echo '</pre>'; echo 'Var GET : '.count($_GET).'<pre>'; print_r($_GET); echo '</pre>'; //fin debug 
   //on récupère nos valeurs 
    
      $denomination = $_POST['denomination']; 
      $fonction = $_POST['fonction']; 
      $nom = $_POST['nom']; 
      $prenom = $_POST['prenom']; 
      $adresse = $_POST['adresse']; 
      $adresse_suite = $_POST['adresse_suite']; 
      $code_postal = $_POST['code_postal']; 
      $commune = $_POST['commune']; 
      $telfixe = $_POST['telfixe']; 
      $telport = $_POST['telport']; 
      $email = $_POST['email']; 
      $message = $_POST['message']; 
    
    

$prenom = $_POST['prenom']; // tu te répette la ?
$nom = $_POST['nom']; // tu te répette la ?
print("<center><strong>Bonjour $prenom $nom<br/><br/>Détails ci-dessous des données que vous nous transmettez :</center></strong>"); 
      echo 'Nom : <strong>'.$nom.'</strong</br>'; 
      echo 'Prenom : <strong>'.$prenom.'</strong</br></br>'; 
       
      echo 'Entreprise : <strong>'.$denomination.'</strong></br>'; 
      echo 'Fonction : <strong>'.$fonction.'</strong></br></br>'; 
       
      echo 'Adresse : <strong>'.$adresse.'</strong</br>'; 
      echo 'Adresse suite :<strong>'.$adresse_suite.'</strong</br>'; 
      echo 'Code postal : <strong>'.$code_postal.'</strong</br>'; 
      echo 'Commune : <strong>'.$commune.'</strong</br></br>'; 
       
      echo 'Téléphone fixe :<strong> '.$telfixe.'</strong</br>'; 
      echo 'Téléphone portable :<strong> '.$telport.'</strong</br>'; 
      echo 'E-mail :<strong> '.$email.'</strong</br>'; 
    
$email = $_POST['email']; 
$point = strpos($email,"."); 
$aroba = strpos($email,"@"); 

if($point=='') 
{ 
echo "Votre email doit comporter un <b>point</b><br/>"; 
} 
elseif($aroba=='') 
{ 
echo "Votre email doit comporter un <b>'@'</b><br/>"; 
} 
else 
{ 
echo "Votre email est: '<a href=\"mailto:"."$email"."\"><b>$email</b></a><br/>   '"; 
} 
    
echo 'Message : '.$message.'</br></br>';       
    
echo "<p class='vi4'>Votre demande a bien été envoyée à AS.AD.CO.<br/> 
 Nous vous remercions pour l'intérêt que vous portez à notre activité et soyez assuré(e) que nous vous répondrons dans les plus brefs délais.</p>\n" ; 
      echo "<form name='boutons'><table border='0' cellspacing='0' cellpadding='0' width='90%' align='center'><tr><td><center>" ; 
  echo "<input type='button' name='Envoi' alt='Envoi'   value=\<a href="contact.php">Contact</a>"Retour à la page d'accueil\" style='color:#660066;background-color:#ebe7f1' onclick=\" onmouseover=\"this.style.color='#ff0000'\" onmouseout=\"this.style.color='#660066'\" onmousedown=\"this.style.color='#ff9900'\" />\n"; 


// envoie de confirmation au client par mail
$subject="ton sujet";	   
$message="<table width=98% border=0 cellspacing=0 cellpadding=0>
<tr> 
<td width=25%>
Bonjour $nom $prenom<br>$message<br>
<br>
Ceci est une demande de confirmation 
</td>
</tr>
<tr>
<td height=19 colspan=3>
Votre demande a bien été envoyée à AS.AD.CO.
<br>
L'équipe vous remercie !
</td>
</tr>
</table>";



$headers .= "From:<$email_webmaster>\n";// mail de l'admin ne pas changer par le mail d'une personne 
$headers .= "X-Sender: <$email>\n"; 
$headers .= "X-Mailer: PHP\n";
$headers .= "X-Priority: 3\n";
$headers .= "Return-Path: <$email> \n"; // Chemin de retour pour les erreurs
$headers .= "Content-Type: text/html; charset=iso-8859-1\n"; // Type MIME
if(mail($email,$subject,$message,$headers)){}

  
?>

Mammouth du PHP | 804 Messages

24 mai 2007, 09:46

je vasi peu être dire une bêteise quen j'en dis souvent mais pour moi tout ca c'est inutile
      
      $denomination = $_POST['denomination']; 
      $fonction = $_POST['fonction']; 
      $nom = $_POST['nom']; 
      $prenom = $_POST['prenom']; 
      $adresse = $_POST['adresse']; 
      $adresse_suite = $_POST['adresse_suite']; 
      $code_postal = $_POST['code_postal']; 
      $commune = $_POST['commune']; 
      $telfixe = $_POST['telfixe']; 
      $telport = $_POST['telport']; 
      $email = $_POST['email']; 
      $message = $_POST['message']; 

ViPHP
ViPHP | 5924 Messages

24 mai 2007, 12:24

je vasi peu être dire une bêteise quen j'en dis souvent mais pour moi tout ca c'est inutile
      
      $denomination = $_POST['denomination']; 
      $fonction = $_POST['fonction']; 
      $nom = $_POST['nom']; 
      $prenom = $_POST['prenom']; 
      $adresse = $_POST['adresse']; 
      $adresse_suite = $_POST['adresse_suite']; 
      $code_postal = $_POST['code_postal']; 
      $commune = $_POST['commune']; 
      $telfixe = $_POST['telfixe']; 
      $telport = $_POST['telport']; 
      $email = $_POST['email']; 
      $message = $_POST['message']; 
En fait, c'aurait été utile s'il y avait eu des tests sur l'existance et la conformité des données (tests indispensables) :
$var = isset($_POST['var'])?$_POST['var']:'';