Vous n'êtes pas identifié(e).

Top posteurs

Statistiques

Partenaires

  • eXolia Hosting
  • Eggdrop.fr

#1 05/04/2014 18:15:53

Oxyg3n3
Nouveau IRCzien
Inscription : 01/01/2013
Messages : 47
Site Web

Codage d'un formulaire php

Bonjour,

je sais pas si c'est une discussion que l'on peut poser sur ce forum j'ai besoin d'aide concernant un formulaire php de contact.

Voici mon codage html

Code: HTML
	<form action="contactmail.php" method="post" name="contactmail" id="contactmail">
<table style="width: 566px; height: 318px;" border="0" cellpadding="4" cellspacing="1">
<tbody>
<tr style="color: rgb(204, 0, 0);">
<td style="width: 362px;" colspan="2">
<div class="Style1" align="center"><font face="Verdana, Arial, Helvetica, sans-serif" size="2"><strong>Formulaire
pour nous contacter :</strong> </font></div>
</td>
</tr>
<tr>
<td style="width: 181px;">
<div align="right"><font face="Verdana, Arial, Helvetica, sans-serif" size="2"><span style="color: black;">Votre adresse mail</span> :</font></div>
</td>
<td style="width: 362px;"><font face="Verdana, Arial, Helvetica, sans-serif" size="2">
<input name="mail" id="mail" size="20" maxlength="100" type="text" /> </font></td>
</tr>
<tr>
<td style="color: black; width: 181px;">
<div align="right"> <font face="Verdana, Arial, Helvetica, sans-serif" size="2"><label for="objet">Objet
du mail :</label> </font></div>
</td>
<td style="width: 362px;"><font face="Verdana, Arial, Helvetica, sans-serif" size="2">
<input name="objet" size="20" maxlength="100" type="text" /> </font></td>
</tr>
<tr>
<td style="width: 181px;" align="right" valign="top"> <font style="color: black;" face="Verdana, Arial, Helvetica, sans-serif" size="2">
<label for="msg">Votre
message :</label> </font>
<div align="right"></div>
<div align="right"></div>
</td>
<td style="width: 362px;"> <font face="Verdana, Arial, Helvetica, sans-serif" size="2">
<textarea name="msg" cols="40" rows="4"></textarea></font></td>
</tr>
<tr>
<td style="width: 181px;"><font face="Verdana, Arial, Helvetica, sans-serif" size="2"><span class="Style3"></span></font></td>
<td style="width: 362px;"><font face="Verdana, Arial, Helvetica, sans-serif" size="2">
<input name="submit" value="Envoyer le message" type="submit" /> </font></td>
</tr>
</tbody>
</table>

Voici mon coage du fichier contactmail.php

Code: PHP
<div align="center">
  <p><em>Retour </em> <a href="http://www.domaine.fr"><strong>Accueil</strong></a></p>
  <p>&nbsp;</p>
  <p>&nbsp;</p>
</div>
 
 
<p>
  <?php
session_start();
$exp = $_POST['mail'];
$objet = stripslashes($_POST['objet']);
$msg = stripslashes($_POST['msg']);
$envoi=mail("MAIL", $objet, $msg,"From: $exp\r\n"."Reply-To: $exp\r\n");
if($envoi) echo"Le mail a bien ete envoyer !";
else echo"L'envoi a echoue, merci de renouveller l'operation !";
session_unset();
session_destroy();
?>
</p>
 

Et voici le codage du traitement.php

Code: PHP
<?php
/*
	********************************************************************************************
	CONFIGURATION
	********************************************************************************************
*/
// destinataire est votre adresse mail. Pour envoyer à plusieurs à la fois, séparez-les par une virgule
$destinataire = 'MAIL';
 
// copie ? (envoie une copie au visiteur)
$copie = 'oui'; // 'oui' ou 'non'
 
// Messages de confirmation du mail
$message_envoye = "Votre message nous est bien parvenu !";
$message_non_envoye = "L'envoi du mail a échoué, veuillez réessayer SVP.";
 
// Messages d'erreur du formulaire
$message_erreur_formulaire = "Vous devez d'abord <a href=\"annuaire.html\">envoyer le formulaire</a>.";
$message_formulaire_invalide = "Vérifiez que tous les champs soient bien remplis et que l'email soit sans erreur.";
 
/*
	********************************************************************************************
	FIN DE LA CONFIGURATION
	********************************************************************************************
*/
 
// on teste si le formulaire a été soumis
if (!isset($_POST['envoi']))
{
	// formulaire non envoyé
	echo '<p>'.$message_erreur_formulaire.'</p>'."\n";
}
else
{
	/*
	 * cette fonction sert à nettoyer et enregistrer un texte
	 */
	function Rec($text)
	{
		$text = htmlspecialchars(trim($text), ENT_QUOTES);
		if (1 === get_magic_quotes_gpc())
		{
			$text = stripslashes($text);
		}
 
		$text = nl2br($text);
		return $text;
	};
 
	/*
	 * Cette fonction sert à vérifier la syntaxe d'un email
	 */
	function IsEmail($email)
	{
		$value = preg_match('/^(?:[\w\!\#\$\%\&\'\*\+\-\/\=\?\^\`\{\|\}\~]+\.)*[\w\!\#\$\%\&\'\*\+\-\/\=\?\^\`\{\|\}\~]+@(?:(?:(?:[a-zA-Z0-9_](?:[a-zA-Z0-9_\-](?!\.)){0,61}[a-zA-Z0-9_-]?\.)+[a-zA-Z0-9_](?:[a-zA-Z0-9_\-](?!$)){0,61}[a-zA-Z0-9_]?)|(?:\[(?:(?:[01]?\d{1,2}|2[0-4]\d|25[0-5])\.){3}(?:[01]?\d{1,2}|2[0-4]\d|25[0-5])\]))$/', $email);
		return (($value === 0) || ($value === false)) ? false : true;
	}
 
	// formulaire envoyé, on récupère tous les champs.
	$nom     = (isset($_POST['nom']))     ? Rec($_POST['nom'])     : '';
	$email   = (isset($_POST['email']))   ? Rec($_POST['email'])   : '';
	$objet   = (isset($_POST['objet']))   ? Rec($_POST['objet'])   : '';
	$message = (isset($_POST['msg'])) ? Rec($_POST['msg']) : '';
 
	// On va vérifier les variables et l'email ...
	$email = (IsEmail($email)) ? $email : ''; // soit l'email est vide si erroné, soit il vaut l'email entré
 
	if (($email != '') && ($objet != '') && ($message != ''))
	{
		// les 4 variables sont remplies, on génère puis envoie le mail
		$headers  = 'MIME-Version: 1.0' . "\r\n";
		$headers .= 'From:'.$email.' <'.$email.'>' . "\r\n" .
					'Reply-To:'.$email. "\r\n" .
					'X-Mailer:PHP/'.phpversion();
 
		// envoyer une copie au visiteur ?
		if ($copie == 'oui')
		{
			$cible = $destinataire.','.$email;
		}
		else
		{
			$cible = $destinataire;
		};
 
		// Remplacement de certains caractères spéciaux
		$message = str_replace("&#039;","'",$message);
		$message = str_replace("&#8217;","'",$message);
		$message = str_replace("&quot;",'"',$message);
		$message = str_replace('<br>','',$message);
		$message = str_replace('<br />','',$message);
		$message = str_replace("&lt;","<",$message);
		$message = str_replace("&gt;",">",$message);
		$message = str_replace("&amp;","&",$message);
 
		// Envoi du mail
		if (mail($cible, $objet, $message, $headers))
		{
			echo '<p>'.$message_envoye.'</p>'."\n";
		}
		else
		{
			echo '<p>'.$message_non_envoye.'</p>'."\n";
		};
	}
	else
	{
		// une des 3 variables (ou plus) est vide ...
		echo '<p>'.$message_formulaire_invalide.' <a href="contact.html">Retour au formulaire</a></p>'."\n";
	};
}; // fin du if (!isset($_POST['envoi']))
?>
 

Je l'ai testé mais je ne reçois jamais les mails... Pouvez-vous m'aider ? Merci


Nous avons la boîte magique et vous les secrets, pourquoi ne pas les partager avec nous ?

Hors ligne

Pied de page des forums

1272108 visites ( 87 aujourd'hui ) 7 visiteurs en ligne
Copyright © 2004 - 2013 IRCz