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

Форум PHP

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

 

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

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: Отправка письма на электронный ящик при обработке формы

Сообщения:  [1-10]   [11-16] 

 
 автор: vladislav_vld   (08.12.2011 в 11:47)   письмо автору
 
   для: Electron   (09.11.2011 в 15:37)
 

Сообщения приходят всегда и в спам не попадут точно. Да вроде и реализовать не так сложно. Почитайте, например здесь:Скрипт отправки сообщений с сайта

  Ответить  
 
 автор: vladislav_vld   (08.12.2011 в 11:47)   письмо автору
 
   для: Electron   (09.11.2011 в 15:37)
 

Может быть не функцией mail лучше воспользоваться, а smtp.

  Ответить  
 
 автор: Electron   (11.11.2011 в 12:23)   письмо автору
 
   для: cheops   (10.11.2011 в 15:46)
 

В общем работает только тот заголовок, который стоит первым, а остальные нет... Может дело в разделителе между заголовками ($headers)? Помогите, плз :)

  Ответить  
 
 автор: Electron   (10.11.2011 в 15:54)   письмо автору
 
   для: cheops   (10.11.2011 в 15:46)
 

В такой ситуации работает кодировка, без копии, без отправителя...

А вот при таком порядке работает копия, но не работают от кого и кодировка:

    $headers = 'Bcc: secret@mail.com"\r\n';
    $headers .= 'Content-Type:text/html; charset=utf-8'"\r\n';
    $headers .= 'From: Name <info@mail.com>"\r\n';

  Ответить  
 
 автор: cheops   (10.11.2011 в 15:46)   письмо автору
 
   для: Electron   (10.11.2011 в 15:41)
 

А если все-таки убрать кавычки и поступить так
    $headers = 'Content-Type:text/html; charset=utf-8"\r\n'; 
    $headers .= 'Bcc: secret@mail.com\r\n'; 
    $headers .= 'From: Name <info@mail.com>\r\n\r\n';
ситуация не меняется?

  Ответить  
 
 автор: Electron   (10.11.2011 в 15:41)   письмо автору
 
   для: cheops   (10.11.2011 в 12:36)
 

Ну я это примерно понял, но всё же не получается сделать правильный порядок...

К примеру, так нормально отображается от кого, но копия и кодировка не работают:

    $headers = 'From: Name <info@mail.com>"\r\n';
    $headers .= 'Content-Type:text/html; charset=utf-8'"\r\n';
    $headers .= 'Bcc: secret@mail.com"\r\n';

А так работает кодировка, но не работают от кого и копия:

    $headers = 'Content-Type:text/html; charset=utf-8'"\r\n';
    $headers .= 'Bcc: secret@mail.com"\r\n';
    $headers .= 'From: Name <info@mail.com>"\r\n\r\n';

Как же всё-таки правильно расположить переходы строк? чтобы работало всё? Заранее спасибо :)

  Ответить  
 
 автор: cheops   (10.11.2011 в 12:36)   письмо автору
 
   для: Electron   (10.11.2011 в 12:12)
 

Тут вот какая штука, дело в том что два перевода строки \r\n\r\n служат признаком окончания почтовых заголовков и начала тела документа. Поэтому строка с \r\n\r\n у вас должна быть всегда последней.

  Ответить  
 
 автор: Electron   (10.11.2011 в 12:12)   письмо автору
 
   для: cheops   (09.11.2011 в 19:04)
 

Мне ещё нужно, чтобы была скрытая копия, тело письма форматировалось в HTML и прикреплялся вордовский файл, это должно выглядеть примерно так:
<?
    $to 
'info@mail.ru';
    
$subject 'Title';
    
$filepatch '/patch/file.doc';
    
$file fopen($filepatch,'rb');
    
$message 'Text: <b>'.$_POST['text'].'</b>';
    
$headers 'Content-Type:text/html; charset=utf-8"\r\n';
    
$headers .= 'From: from@mail.ru"\r\n\r\n';
    
$headers .= 'Bcc: secret@mail.ru"\r\n';
    
$body 'name='.basename($filepatch).'\n';
    
$body .= 'Content-Transfer-Encoding:base64n';
    
$body .= 'Content-Disposition:attachmentnn';
    
$body .= base64_encode(fread($file,filesize($filepatch))).'n';
    
mail($to$subject$message$headers$body);
?>

Что сделать, чтобы это всё заработало? :)

  Ответить  
 
 автор: Electron   (10.11.2011 в 11:05)   письмо автору
 
   для: Electron   (10.11.2011 в 10:58)
 

А, стоп, работает отлично, так:
<?
    $to 
'info@mail.ru';
    
$subject 'Title';
    
$message 'Text: '.$_POST['text'];
    
$header 'From: from@mail.ru"\r\n\r\n';
    
mail($to$subject$message$header);
?> 

Ещё перед переводами строк поставил кавычку, а то письмо приходит вида: from@mail.ru#092
Спасибо! :)
Сейчас буду пытаться вставить в письмо HTML-код, если не получится, спрошу тут, ок? :p

UPD:
А ещё лучше так:
$header = 'From: Name <from@mail.ru>"\r\n\r\n';

  Ответить  
 
 автор: Electron   (10.11.2011 в 10:58)   письмо автору
 
   для: cheops   (09.11.2011 в 19:19)
 

Ничего не изменилось, я правильно делаю?
<?
    $to 
'info@mail.ru';
    
$subject 'Title';
    
$message 'Text: '.$_POST['text'];
    
$from 'from@mail.ru';
    
$header 'From: from@mail.ru\r\n\r\n';
    
mail($to$subject$message$from$header);
?>

  Ответить  

Сообщения:  [1-10]   [11-16] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

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