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

Форум PHP

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

 

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

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

тема: отправка почты (как сделать переход на следующую строку?)
 
 автор: irr   (12.10.2005 в 09:45)   письмо автору
 
 

здравствуйте! помогите пожалуйста разобраться:

имеется форма, в TEXTAREA пользователь вводит сообщение, нажимает "Отправить" и управление передается PHP-скрипту, который отправляет сообщение на почту при помощи функции mail.
 mail ($mailto, $subject, $mes, $headers); 
где $mes - содержимое окна TEXTAREA.
и возникает такая проблема:
если пользователь пишет однострочное сообщение - то все нормально. если использует переход на следующую строку - то на почту ничего не приходит. я так понимаю, $mes должна быть представлена в виде "строка1 \n строка2 \n строка 3". как заменить переходы на следующую строку на "\n"?
я пробовал сделать
$mes=str_replace(chr(12),"\n",$mes);
, но это не помогло.

   
 
 автор: multiBrain   (12.10.2005 в 09:51)   письмо автору
 
   для: irr   (12.10.2005 в 09:45)
 

Да, вообще-то перевод строки не должен никак влиять. как раз вчера делал подобный контакт, никаких подобных проблем не наблюдал. Для win-машин лучше вмсесто \n делать \r\n. Вот тоже вопрос по смежной теме: на адном сайте всавил форму в раздел контакты, что бы тоже отправляла сообщение на мыло, работает. Тот же самый код выдернул, запихал на другой, письмо приходит в сумашедшой кадировке. Что это зависит от настроек сервера?

   
 
 автор: irr   (12.10.2005 в 10:00)   письмо автору
 
   для: multiBrain   (12.10.2005 в 09:51)
 

может быть Вы забыли заголовок:
$headers .= "Content-Type: text/html; charset=windows-1251";

   
 
 автор: multiBrain   (12.10.2005 в 10:17)   письмо автору
 
   для: irr   (12.10.2005 в 10:00)
 

Заголовок-то я действительно не сделал. Но в одном случае работет как надо, в другом нет. Ну да ладно, впишу хидер. Спасибо что напомнили, а то я про него и забыл совсем

   
 
 автор: irr   (12.10.2005 в 10:12)   письмо автору
 
   для: multiBrain   (12.10.2005 в 09:51)
 

так, я сейчас перепроверил - действительно не влияет :).
наверное, это был какой-то глюк на почте.
а потом я вставил эту фунцию str_replace - вот с ней точно не работает. а без нее все ОК.

   
 
 автор: cheops   (12.10.2005 в 14:44)   письмо автору
 
   для: irr   (12.10.2005 в 09:45)
 

Письмо отправляется в html-формате или plain-формате? В первом случае необходимо пропускать содержимое текста через функцию nl2br() для того, переводы строк заменить на <br>

   
Rambler's Top100
вверх

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