Réessayer";
// Message d'erreur du formulaire
$message_formulaire_invalide = "Vérifiez que tous les champs soient bien remplis et que l'email soit sans erreur.
Réessayer.;";
/*
********************************************************************************************
FIN DE LA CONFIGURATION
********************************************************************************************
*/
/*
* 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[ 'message' ] ) ) ? Rec( $_POST[ 'message' ] ) : '';
// 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é
$err_formulaire = false; // sert pour remplir le formulaire en cas d'erreur si besoin
if ( isset( $_POST[ 'envoi' ] ) ) {
if ( ( $nom != '' ) && ( $email != '' ) && ( $objet != '' ) && ( $message != '' ) ) {
// les 4 variables sont remplies, on génère puis envoie le mail
$headers = 'From:' . $nom . ' <' . $email . '>' . "\r\n";
//$headers .= 'Reply-To: '.$email. "\r\n" ;
//$headers .= 'X-Mailer:PHP/'.htmlversion();
// envoyer une copie au visiteur ?
if ( $copie == 'oui' ) {
$cible = $destinataire . ';' . $email;
} else
{
$cible = $destinataire;
};
// Remplacement de certains caractères spéciaux
$message = str_replace( "'", "'", $message );
$message = str_replace( "’", "'", $message );
$message = str_replace( """, '"', $message );
$message = str_replace( '<br>', '', $message );
$message = str_replace( '<br />', '', $message );
$message = str_replace( "<", "<", $message );
$message = str_replace( ">", ">", $message );
$message = str_replace( "&", "&", $message );
// Envoi du mail
$num_emails = 0;
$tmp = explode( ';', $cible );
foreach ( $tmp as $email_destinataire ) {
if ( mail( $email_destinataire, $objet, $message, $headers ) )
$num_emails++;
}
if ( ( ( $copie == 'oui' ) && ( $num_emails == 2 ) ) || ( ( $copie == 'non' ) && ( $num_emails == 1 ) ) ) {
echo '
' . $message_envoye . '
';
} else {
echo '
' . $message_non_envoye . '
';
};
} else {
// une des 3 variables (ou plus) est vide ...
echo '
' . $message_formulaire_invalide . '
';
$err_formulaire = true;
};
}; // fin du if (!isset($_POST['envoi']))
if ( ( $err_formulaire ) || ( !isset( $_POST[ 'envoi' ] ) ) ) {
// afficher le formulaire
echo '
';
};
?>