Вы не зашли.
Страницы 1
Пример в котором реализована отправка писем с использованием smtp-сервера, для которого требуется авторизация. Поэтому не забудь добавить в скрипт соответствующие реквизиты доступа, например:
<?php
$mhSmtpMail_Server = "smtp.domain.tld"; // Укажите адрес SMTP-сервера
$mhSmtpMail_Port = "25"; // Порт SMTP-сервера, как правило 25
$mhSmtpMail_Username = "postmaster@domain.tld"; // Имя почтового ящика (пользователя)
$mhSmtpMail_Password = "password"; // и пароль к нему.
$mhSmtpMail_From = "Имя отправителя"; // Имя отправителя в поле From
// Обратите внимание, что в условиях нашей почтовой системы, имя пользователя требуется указывать полностью, например postmaster@domain.tld
function MailSmtp($to, $subject, $message, $headers)
{
global $mhSmtpMail_Server, $mhSmtpMail_Port, $mhSmtpMail_Username, $mhSmtpMail_Password;
$mhSmtpMail_localhost = "localhost";
$mhSmtpMail_newline = "\r\n";
$mhSmtpMail_timeout = "30";
$smtpConnect = fsockopen($mhSmtpMail_Server, $mhSmtpMail_Port, $errno, $errstr, $mhSmtpMail_timeout);
$smtpResponse = fgets($smtpConnect, 515);
if(empty($smtpConnect))
{
$output = "Failed to connect: $smtpResponse";
return $output;
}
else
{
$logArray['connection'] = "Connected: $smtpResponse";
}
fputs($smtpConnect,"AUTH LOGIN" . $mhSmtpMail_newline);
$smtpResponse = fgets($smtpConnect, 515);
$logArray['authrequest'] = "$smtpResponse";
fputs($smtpConnect, base64_encode($mhSmtpMail_Username) . $mhSmtpMail_newline);
$smtpResponse = fgets($smtpConnect, 515);
$logArray['authmhSmtpMail_username'] = "$smtpResponse";
fputs($smtpConnect, base64_encode($mhSmtpMail_Password) . $mhSmtpMail_newline);
$smtpResponse = fgets($smtpConnect, 515);
$logArray['authmhSmtpMail_password'] = "$smtpResponse";
fputs($smtpConnect, "HELO $mhSmtpMail_localhost" . $mhSmtpMail_newline);
$smtpResponse = fgets($smtpConnect, 515);
$logArray['heloresponse'] = "$smtpResponse";
fputs($smtpConnect, "MAIL FROM: $mhSmtpMail_Username" . $mhSmtpMail_newline);
$smtpResponse = fgets($smtpConnect, 515);
$logArray['mailmhSmtpMail_fromresponse'] = "$smtpResponse";
fputs($smtpConnect, "RCPT TO: $to" . $mhSmtpMail_newline);
$smtpResponse = fgets($smtpConnect, 515);
$logArray['mailtoresponse'] = "$smtpResponse";
fputs($smtpConnect, "DATA" . $mhSmtpMail_newline);
$smtpResponse = fgets($smtpConnect, 515);
$logArray['data1response'] = "$smtpResponse";
fputs($smtpConnect, "Subject: $subject\r\n$headers\r\n\r\n$message\r\n.\r\n");
$smtpResponse = fgets($smtpConnect, 515);
$logArray['data2response'] = "$smtpResponse";
fputs($smtpConnect,"QUIT" . $mhSmtpMail_newline);
$smtpResponse = fgets($smtpConnect, 515);
$logArray['quitresponse'] = "$smtpResponse";
}
?>
Этот код можно добавить в function sendEmailMessage после " $message .= chunk_split(base64_encode(fread($file, filesize($filename))))."\n";} "
Также неплохо заменить хедеры, например на эти:
$headers = "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/html; charset=windows-1251\r\n";
$headers .= "To: $to\r\n";
$headers .= "From: Tournir Registration <admin@excessive.ru>";
Вот эту часть
$mhSmtpMail_Server = "smtp.excessive.ru"; // Укажите адрес SMTP-сервера
$mhSmtpMail_Port = "25"; // Порт SMTP-сервера, как правило 25
$mhSmtpMail_Username = "admin@excessive.ru"; // Имя почтового ящика (пользователя)
$mhSmtpMail_Password = "cLAN1124"; // и пароль к нему.
$mhSmtpMail_From = "Администрация excessive.ru"; // Имя отправителя в поле From
вставляй до функции.
Удачи!:D
Страницы 1