Проблема с Phpmail

Тема в разделе "PHP", создана пользователем Igorekweb, 4 мар 2009.

Статус темы:
Закрыта.
Модераторы: latteo
  1. Igorekweb

    Igorekweb Постоялец

    Регистр.:
    11 дек 2006
    Сообщения:
    58
    Симпатии:
    52
    Такая проблема, вот пример обработчика формы заказа:

    работает на фри хостинге, phpmail работает, в результате отправки ошибок нет, но письма не доходят до адресата, в чем может быть причина? (кроме хостинга)
     
  2. Sangre

    Sangre Постоялец

    Регистр.:
    12 ноя 2008
    Сообщения:
    51
    Симпатии:
    6
  3. r00t

    r00t

    Регистр.:
    30 июл 2006
    Сообщения:
    192
    Симпатии:
    65
    MTA на сервере настроен? может письма в папку спам падают?
     
  4. NoN

    NoN Постоялец

    Регистр.:
    25 ноя 2008
    Сообщения:
    79
    Симпатии:
    33
    Скрипт рабочий но не указан "From"
    попробуй такую конструкцию..


    Код:
    <?php
    $to      = 'nobody@example.com';
    $subject = 'the subject';
    $message = 'hello';
    $headers = 'From: webmaster@example.com' . "\r\n" .
        'Reply-To: webmaster@example.com' . "\r\n" .
        'X-Mailer: PHP/' . phpversion();
    
    mail($to, $subject, $message, $headers);
    ?>
     
  5. Igor123

    Igor123 Постоялец

    Регистр.:
    14 июн 2008
    Сообщения:
    116
    Симпатии:
    13
    я вот так почту отправляю
    работает
    проверенно :)

    Код:
    <?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 true;
         if (mail($this -> to, htmlspecialchars( stripslashes(trim($this -> subject))),
            htmlspecialchars(stripslashes(trim($this -> msg)))))
         {
            return true;
         }else{
            return false;
         } 
      }
    }
    ?>



    Код:
    <?php
    
    $text="tekst = \t".$_POST['tekst']."\n\n";
        include("./mail_class.php");
        $mail = new Mail();
        $mail -> to = "mail1@mail.ru,mail2@mail.ru"; 
        //сюда подставляется реальный адрес
        $mail -> subject = "тут тема";
        $mail -> msg = $text;
        $mail -> msg = $text;
        $mail -> rigorous_email_check = 0;
        if($mail->send()){
            echo("");
        }else{
            echo("");
        }  
    
    
    ?>
     
  6. Igorekweb

    Igorekweb Постоялец

    Регистр.:
    11 дек 2006
    Сообщения:
    58
    Симпатии:
    52
    насчет этого - чесно не знаю, но все же всем спасибо за помощь, но все равно не могу понять что не так у меня :confused:
     
Статус темы:
Закрыта.