Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: проблемы с mail через php
2x4.RU WEB Hosting > Общие форумы по услугам хостинг компании 2x4 > Обсуждение платного хостинга и решений для компаний
kron
День добрый! У меня есть домен на хостинге 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();
?>
kron
проблему решили, спасибо!
Но проблема с кодировкой все еще не решенна, на mail.2x4.ru приходят каракули вместо текста.... на других почтах все нормально
Прошу решить эту проблемы или описать какие нужно кодировки выставлять в header...
admin
боюсь вы просто не верно кодировку настроили.
kron
Цитата(admin @ 29 09 2007, 14:21) *
боюсь вы просто не верно кодировку настроили.

Где неверно настроил? в парамметрах mail (укажите конкретную кодировку, я эксперементировал и 0 эффекта) или на самом почтовом ящике?
admin
может вопрос в том в какой кодировке вы это скормили функции
admin
если вопрос серьездный для вас - обратитесь с лужбу поддержки через панель управления.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Русская версия IP.Board © 2001-2025 IPS, Inc.