par
winsaime » 02 déc. 2015, 03:15
Bonjour à tous !
Je viens de débuter en PHP, et je cherche solution à mon problème.
Je veux que chaque personne qui rempli le formulaire reçoit automatique un message personnalisé par mail.
Voici mon code :
<?php
session_start();
@ini_set('display_errors', 0);
@ini_set('track_errors', 0);
@setlocale(LC_TIME, 'FR_fr.utf8','fra');
if($_REQUEST['$_POST'] = '$_POST') {
// Début du code
require('config.inc.php');
$array['nom'] = isset($_REQUEST['nom']) ? strip_tags(trim($_REQUEST['nom'])) : '';
$array['categories'] = isset($_REQUEST['categories']) ? strip_tags(trim($_REQUEST['categories'])) : '';
$array['email'] = isset($_REQUEST['email']) ? ckmail($_REQUEST['email']) : '';
// DATE
$date = strftime("%A, %d %B %Y, %H:%M:%S");
$mail_body = " <html><body style='font-family: Candara, Verdana; font-size: 14px; color: #5A5E6B;'>
<b>Date :</b> {$date} <br><hr>
<b>Nom & Prénom :</b><br> {$array['nom']} <br><br>
<b>Votre e-mail :</b><br> {$array['email']} <br><br>
<b>E-mail ÉMIRATS-ARABES-UNIS :</b><br> {$array['categories']} <br><br>
<hr>
</body></html>";
// SMTP ACTIVÉ [isset = pour les anciennes versions]
if(!isset($config['use_smtp']) || isset($config['use_smtp']) && $config['use_smtp'] === true) {
require('phpmailer/5.1/class.phpmailer.php');
$m = new PHPMailer();
$m->IsSMTP();
$m->SMTPDebug = false;
$m->SMTPAuth = true;
$m->Host = $config['smtp_host'];
$m->Port = $config['smtp_port'];
$m->Username = $config['smtp_user'];
$m->Password = $config['smtp_pass'];
$m->SingleTo = true;
$m->CharSet = "UTF-8";
$m->Subject = 'Commande de fichiers';
$m->AltBody = '';
$m->AddAddress($config['send_to'], 'nom');
$m->AddReplyTo($array['email'], $array['nom']);
$m->SetFrom($config['smtp_user'], $array['nom']);
$m->MsgHTML($mail_body);
// Si tout est OK envoi le mail
if($m->Send()) {
header("Refresh: 0; url=commande-sucess.php", true, 303);
}
else
{
die('');
}
unset($array, $m);
}
// mail()
else {
mail(
$config['send_to'] ,
$mail_body
);
}
}
/** **********************************
@Vérification e-mail
/** ******************************* **/
function ckmail($email) {
$email = trim(strtolower($email));
if(preg_match('/^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,4})$/',trim($email))){
return $email;
} else { return false; }
}
?>
Bonjour à tous !
Je viens de débuter en PHP, et je cherche solution à mon problème.
Je veux que chaque personne qui rempli le formulaire reçoit automatique un message personnalisé par mail.
Voici mon code :
[php]<?php
session_start();
@ini_set('display_errors', 0);
@ini_set('track_errors', 0);
@setlocale(LC_TIME, 'FR_fr.utf8','fra');
if($_REQUEST['$_POST'] = '$_POST') {
// Début du code
require('config.inc.php');
$array['nom'] = isset($_REQUEST['nom']) ? strip_tags(trim($_REQUEST['nom'])) : '';
$array['categories'] = isset($_REQUEST['categories']) ? strip_tags(trim($_REQUEST['categories'])) : '';
$array['email'] = isset($_REQUEST['email']) ? ckmail($_REQUEST['email']) : '';
// DATE
$date = strftime("%A, %d %B %Y, %H:%M:%S");
$mail_body = " <html><body style='font-family: Candara, Verdana; font-size: 14px; color: #5A5E6B;'>
<b>Date :</b> {$date} <br><hr>
<b>Nom & Prénom :</b><br> {$array['nom']} <br><br>
<b>Votre e-mail :</b><br> {$array['email']} <br><br>
<b>E-mail ÉMIRATS-ARABES-UNIS :</b><br> {$array['categories']} <br><br>
<hr>
</body></html>";
// SMTP ACTIVÉ [isset = pour les anciennes versions]
if(!isset($config['use_smtp']) || isset($config['use_smtp']) && $config['use_smtp'] === true) {
require('phpmailer/5.1/class.phpmailer.php');
$m = new PHPMailer();
$m->IsSMTP();
$m->SMTPDebug = false;
$m->SMTPAuth = true;
$m->Host = $config['smtp_host'];
$m->Port = $config['smtp_port'];
$m->Username = $config['smtp_user'];
$m->Password = $config['smtp_pass'];
$m->SingleTo = true;
$m->CharSet = "UTF-8";
$m->Subject = 'Commande de fichiers';
$m->AltBody = '';
$m->AddAddress($config['send_to'], 'nom');
$m->AddReplyTo($array['email'], $array['nom']);
$m->SetFrom($config['smtp_user'], $array['nom']);
$m->MsgHTML($mail_body);
// Si tout est OK envoi le mail
if($m->Send()) {
header("Refresh: 0; url=commande-sucess.php", true, 303);
}
else
{
die('');
}
unset($array, $m);
}
// mail()
else {
mail(
$config['send_to'] ,
$mail_body
);
}
}
/** **********************************
@Vérification e-mail
/** ******************************* **/
function ckmail($email) {
$email = trim(strtolower($email));
if(preg_match('/^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,4})$/',trim($email))){
return $email;
} else { return false; }
}
?>[/php]