Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: отправка почты и перенос строки
 
 автор: tur1st   (01.03.2010 в 14:52)   письмо автору
 
 

Никак е могу добиться чтобы письмо было с переносом строки

строчка $headers = "Content-type: text/html; charset=windows-1251 \r\n";
помогла решить вопросы с кодировками
но добавил проблем спереносом строки
ни \n ни <br> не помогают

Получаю в таком виде
Клиентский номер:авр Контактное лицо:авпрапр e-mail:апр Примечание:апр

В чем может быть дело?

// отправляем на почту уведомление о том что ктото зарегился                                     
  class Mail 
  {
  // создаем переменные, в которых хранится содержимое заголовков
  var $to = '';
  var $from = '';
  var $reply_to = '';
  var $cc = '';
  var $bcc = '';
  var $subject = '';
  var $msg = '';
  var $validate_email = false; 
  // проверяет допустимость почтовых адресов
  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()
  /* метод отправки сообщения */
  {
  $headers  = "Content-type: text/html; charset=windows-1251 \r\n"; 
//     if(!$this -> check_fields()) return true;
     if (mail($this -> to, htmlspecialchars(stripslashes(trim($this -> subject))),
        htmlspecialchars(stripslashes(trim($this -> msg))), $headers))
     {
        return true;
     }else{
        return false;
     } 
  }
}

                     
                                     
                                     
                                     
if(mysql_query($query))
 {
 // шлем почту
    
    $mail = new Mail();
    //$mail -> to = "info@cryotec.ru";
    $mail -> to = "prostonau@mail.ru,afkamen@rambler.ru";  
    //сюда подставляется реальный адрес
    $mail -> subject = "На сайте cryotec.ru задан вопрос через форму обратной связи";
    //$mail -> subject = convert_cyr_string ($mail -> subject,"w","w");
    $mail -> msg = "Клиентский номер:".$_POST['id_code']."\n\n".
    "Контактное лицо:".$_POST['contact']."\n".
                "e-mail:".$_POST['email']."\n".
                "Примечание:".$_POST['vopros']."\n";
    //$mail -> msg = convert_cyr_string ($mail -> msg,"w","w");
    $mail -> rigorous_email_check = 0;
    if($mail->send()){
       // echo("Success");
    }else{
      //  echo("error");
    }
    echo("<br>");
    
    
    
    // Если запрос выполнен удачно, осуществляем автоматический переход
    // на главную страницу администрирования
    echo "<HTML><HEAD>
          <META HTTP-EQUIV='Refresh' CONTENT='0; URL=index.php?add=ok'>
          </HEAD>";
  }
  else links("Ошибка при обработке вопроса");

  Ответить  
 
 автор: cheops   (05.03.2010 в 18:00)   письмо автору
 
   для: tur1st   (01.03.2010 в 14:52)
 

Хм... так у вас же \n используется а не <br>
    $mail -> msg = "Клиентский номер:".$_POST['id_code']."\n\n". 
    "Контактное лицо:".$_POST['contact']."\n". 
                "e-mail:".$_POST['email']."\n". 
                "Примечание:".$_POST['vopros']."\n"; 
    //$mail -> msg = convert_cyr_string ($mail -> msg,"w","w");

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования