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

Форум PHP

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

 

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

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

тема: Помогите с созданием рассыльщика писем а штмл формате
 
 автор: alec_av   (27.03.2006 в 10:16)   письмо автору
 
 

Доброго времени суток!!!

Столкнулся с такой проблемой.

Нужно чтобы при отправке письма к нему шапкой прикреплялась кактинка и изменить фон письма и цвет шрифта.


Тоесть я при отправке ввожу текст а используя MIME он превращался в HTML в котором можно сделать все необходимые мне изменения.


http://www.softtime.ru/scripts/sendmessage.php

Тут есть несколько примеров но именно html я не нашел

Зарание спасибо.

   
 
 автор: cheops   (27.03.2006 в 14:01)   письмо автору
 
   для: alec_av   (27.03.2006 в 10:16)
 

Для отправки писем в формате HTML, нужно передать в четвёртый параметр функции mail почтовый заголовок
Content-Type: text/html;

   
 
 автор: alec_av   (27.03.2006 в 18:32)   письмо автору
 
   для: cheops   (27.03.2006 в 14:01)
 

Тоесть надо просто указать

Content-Type: text/html;



у меня


$result=mysql_query($q);
while ($row=mysql_fetch_array($result))
@mail ($row[email], $_POST['from'];, $_POST['msg']);
}


а как надо сделать и где нужно указать параметры карнинки и фона???


<body bgcolor="#000000" text="#FFFFFF">



Извените может я и глупости спрашиваю но чтото никак не могу понять
Я просто забыл упомянуть что текс передается из формы а картинка и оформление штмл отдельно. А как сделать немогу разобраться

   
 
 автор: XPraptor   (27.03.2006 в 18:46)   письмо автору
 
   для: alec_av   (27.03.2006 в 18:32)
 

Да нет, все верно спрашиваете.
Если у вас 'msg' это чистый текст, то вам необходимо, либо на лету в коде дописывать html код страницы, либо иметь шаблон, в котором делать замену строки на ваш текст.
То есть, вместо вашего $_POST['msg'] в функцию должен отправляться уже полный код html страницы.
И в вызове функции должен еще появиться параметр заголовков, чтобы данные воспринимались как html.

$headers='MIME-Version: 1.0' . "\r\n";
$headers.='Content-type: text/html; charset=windows-1251' . "\r\n";
@mail ($row[email], $_POST['from'], $full_html_msg, $headers); 

   
 
 автор: alec_av   (28.03.2006 в 10:59)   письмо автору
 
   для: XPraptor   (27.03.2006 в 18:46)
 

Все правильно. Только как добавить "налету" html коды?? Я и так пробовал

$msg="<img src="http://www.@@@@@@@/mailer.gif"><body bgcolor="#00006b" text="#FFFFFF">/body>\n$_POST['msg']\n";
$headers='MIME-Version: 1.0' . "\r\n"; 
$headers.='Content-type: text/html; windows-1251' . "\r\n";
@mail ($row[email],  $_POST['from'], $msg,  $headers);


но чтото не получается выдает ошибку syntax error, unexpected T_STRING.

   
 
 автор: Trianon   (28.03.2006 в 11:06)   письмо автору
 
   для: alec_av   (28.03.2006 в 10:59)
 

кавычки следует экранировать обратными слэшами. Да и сами обратные слэши, кстати, тоже.

   
 
 автор: hddmaster   (28.03.2006 в 11:16)   письмо автору
 
   для: Trianon   (28.03.2006 в 11:06)
 

Есть хороший класс работы с почтой http://www.phpguru.org/static/mime.mail.html

   
 
 автор: alec_av   (29.03.2006 в 11:11)   письмо автору
 
   для: hddmaster   (28.03.2006 в 11:16)
 


Есть хороший класс работы с почтой http://www.phpguru.org/static/mime.mail.html>Есть хороший 

Спасибо за ссылочку только одна пробла текст не добовляется


$result=mysql_query($q);
while ($row=mysql_fetch_array($result))
             {
    $mail = new htmlMimeMail5();
    $mail->setFrom('Alex<@@@@@@@.com>');
    $mail->setSubject($_POST['from']);
    $mail->setPriority('high');
$mail->setHTML('<body bgcolor="#00006b" text="#FFFFFF">
<center><img src="mailer.gif">');
    $mail->setText($_POST['msg']);
    $mail->addEmbeddedImage(new fileEmbeddedImage('mailer.gif'));
    $mail->send(array($row[email]));
}


В чет проблема непойму

$mail->setText($_POST['msg']);
неработает

   
 
 автор: XPraptor   (29.03.2006 в 11:19)   письмо автору
 
   для: alec_av   (29.03.2006 в 11:11)
 

Как ты себе представляешь одновременно отправить письмо и в текстовом и в html формате?
Только один из вариантов возможен. Если сетиш текст, то все туда сеть, если html то все в него пихай.

   
 
 автор: Trianon   (29.03.2006 в 11:46)   письмо автору
 
   для: XPraptor   (29.03.2006 в 11:19)
 

Вообще-то есть такой MIME-тип: multipart/alternative

   
 
 автор: XPraptor   (29.03.2006 в 11:49)   письмо автору
 
   для: Trianon   (29.03.2006 в 11:46)
 

Для комбинированной отправки специальные классы пишут, потому как постоянно глюки возникают при совмещении. А тут простой класс, который либо принимает текст, либо html, а товарищ ему оба варианта сует, но html первым, вот он его и шлет как положено.

   
 
 автор: Trianon   (29.03.2006 в 12:08)   письмо автору
 
   для: XPraptor   (29.03.2006 в 11:49)
 

Меня больше смутил while ($row=mysql_fetch_array($result)) $mail->send(array($row[email]));

А не спам ли это?

   
 
 автор: XPraptor   (29.03.2006 в 12:10)   письмо автору
 
   для: Trianon   (29.03.2006 в 12:08)
 

Не обязательно. Может человек своим подписчикам шлет рассылку.

   
 
 автор: alec_av   (29.03.2006 в 21:57)   письмо автору
 
   для: Trianon   (29.03.2006 в 12:08)
 

>Меня больше смутил while ($row=mysql_fetch_array($result))
>$mail->send(array($row[email]));
>
>А не спам ли это?

Я с своего сайта пытаюсь организовать обонентам рассылку спасибо все понял всем огромное спасибо

   
Rambler's Top100
вверх

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