После проверки логина и пароля, но перед переадресацией на главную страницу:
class mailTo {
public function sendMail($email,$message,$subject)
{
$to = $user_email@from_db;
$subject = '=?utf-8?b?'. base64_encode($subject) .'?=';
$fromMail = 'admin@example.ru'; //от кого
$fromName = 'example.ru'; //имя сайта
$date = date(DATE_RFC2822); /дата отправки, это сервисная дата, она не отображается в теле письма
$messageId='<'.time().'-'.md5($fromMail.$to).'@'.$_SERVER['SERVER_NAME'].'>';
$headers = 'MIME-Version: 1.0' . "\r\n";
$headers .= "Content-type: text/html; charset=utf-8". "\r\n";
$headers .= "From: ". $fromName ." <". $fromMail ."> \r\n";
$headers .= "Date: ". $date ." \r\n";
$headers .= "Message-ID: ". $messageId ." \r\n";
return mail($to, $subject, $message, $headers);
}
}
Пример со стакоуверфлоу.
У меня сделано так:
$mail = mysqli_fetch_assoc($sql);
$messageId = time();
$to = ''.$mail['user_email'].'';
$subject = 'заголовок письма';
$message = '<HTML><head><META content="text/html; charset=UTF-8" http-equiv=Content-Type><style>BODY {FONT-FAMILY: Verdana; FONT-SIZE: 11px} TD {FONT-SIZE: 10px}</style></head>
<BODY text=#000000 leftMargin=0 topMargin=0 rightMargin=0 bottomMargin=0 marginheight=0 marginwidth=0><center>
<B>Вы успешно авторизовались на сайте '.$date.' в '.$time.'</B></center><BR><BR><BR><BR><BR> сообщение сгенерировано автоматически, отвечать на него не нужно.<BR><BR>
если это были не вы, обратитесь к <a href=''>админу</a></body></html>';
$headers = 'From: admin@example.com' . "\r\n" .
'X-Mailer: PHP/' . phpversion();
$headers = 'MIME-Version: 1.0' . "\r\n";
$headers .= "Content-type: text/html; charset=utf-8". "\r\n";
$headers .= "From: admin@example.com". "\r\n";
$headers .= "Date: ". $date ." \r\n";
$headers .= "Message-ID: ". $messageId ." \r\n";
imap_mail($to, $subject, $message, $headers);
header("Location: index.php"); exit();
Но падают в спам.