День добрый! У меня есть домен на хостинге 2x4
имеется скриптик отправляешь письмо пользователю, письмо доходит только до внутрехостинговой почты (причем кодировка страдает ужасно), а до @mail.ru и до @rambler.ru и вовсе не доходит
код на php
класс :
Код
<?php
class Mail
{
// создаем переменные, в которых хранится содержимое заголовков
var $to = '';
var $from = '';
var $reply_to = '';
var $cc = '';
var $bcc = '';
var $subject = '';
var $msg = '';
var $validate_email = true;
// проверяет допустимость почтовых адресов
var $rigorous_email_check = true;
// проверяет допустимость доменных имен по записям DNS
var $allow_empty_subject = false;
// допустимость пустого поля subject
var $allow_empty_msg = false;
// допустимость пустого поля msg
var $headers = array();
/* массив $headers содержит все поля заголовка, кроме to и subject*/
/* метод, проверяющий, переданы ли все значения заголовков
и проверку допустимости почтовых адресов */
function check_fields()
{
if(empty($this->to))
{
return false;
}
if(!$this->allow_empty_subject && empty($this->subject))
{
return false;
}
if(!$this->allow_empty_msg && empty($this->msg))
{
return false;
}
/* если есть дополнительные заголовки, помещаем их в массив $headers*/
if(!empty($this->from))
{
$this->headers[] = "From: $this->from";
}
if(!empty($this->reply_to))
{
$this->headers[] = "Reply_to: $this->reply_to";
}
// проверяем допустимость почтового адреса
if ($this->validate_email)
{
if (!preg_match("/[0-9a-z_]+@[0-9a-z_^\.]+\.[a-z]{2,3}/i", $this->to))
{
return false;
}
return true;
}
}
/* метод отправки сообщения */
function send()
{
if(!$this->check_fields()) return false;
$hdrs = implode(" \r\n", $this->headers);
// if (mail($this->to, htmlspecialchars( stripslashes(trim($this->subject))),
// htmlspecialchars(stripslashes($this->msg)), $hdrs))
if (mail($this->to, $this->subject,
$this->msg, $hdrs))
{
return true;
}
else
{
return false;
}
}
}
?>
код вызова
Код
<?php
include "mailer.php";
$nmail= new Mail;
$nmail->to="
[email protected]";
$nmail->from="мыло на хостинге";
$nmail->reply_to="мыло на хостинге";
$nmail->subject="Привет";
$nmail->msg="Здарова";
$nmail->send();
?>