|
|
|
| подскажите плиз,как мне скритом php отправить сообщение на емаил,чтобы оно содержало картинки,можно было бы управлять стилями текста...а то я пробовал как html, не получается...второй день голову ломаю над этим... | |
|
|
|
|
|
|
|
для: LimP
(03.12.2004 в 22:14)
| | Вот функция, созданная Кузнецовым М.В., позволяющая отправить письмо как HTML-текст, а картинки как вложения:
<?php
// Функция для отправки почтового сообщения с вложением
function send_mail($to, $thm, $html, $path)
{
$fp = fopen($path,"r");
if (!$fp)
{
print "Файл $path не может быть прочитан";
exit();
}
$file = fread($fp, filesize($path));
fclose($fp);
$path = substr($path,12);
$boundary = "--".md5(uniqid(time())); // генерируем разделитель
$headers .= "MIME-Version: 1.0\n";
$headers .="Content-Type: multipart/mixed; boundary=\"$boundary\"\n";
$multipart .= "--$boundary\n";
$kod = 'koi8-r'; // или $kod = 'windows-1251';
$multipart .= "Content-Type: text/html; charset=$kod\n";
$multipart .= "Content-Transfer-Encoding: Quot-Printed\n\n";
$multipart .= "$html\n\n";
$message_part = "";
$message_part .= "Content-Type: application/octet-stream";
$message_part .= "; file_name = \"$path\"\n";
$message_part .= "Content-Transfer-Encoding: base64\n";
$message_part .= "Content-Disposition: attachment; filename = \"".$path."\"\n\n";
$message_part .= chunk_split(base64_encode($file))."\n";
$multipart .= "--$boundary\n".$message_part."--$boundary--\n";
if(!mail($to, $thm, $multipart, $headers))
{
echo "К сожалению, письмо не отправлено";
exit();
}
}
?>
|
http://www.softtime.ru/forum/read.php?id_forum=1&id_theme=361 | |
|
|
|
|
|
|
|
для: cheops
(03.12.2004 в 23:01)
| | а можно ли как-нибудь добавить эту функцию,чтобы она еще и адрес отправителя тоже могла посылать... | |
|
|
|
|
|
|
|
для: LimP
(06.12.2004 в 20:47)
| | Вставьте между строк
<?php
$headers .= "MIME-Version: 1.0\n";
$headers .="Content-Type: multipart/mixed; boundary=\"$boundary\"\n";
?>
|
следующий заголовок
<?php
$headers .= "MIME-Version: 1.0\n";
$headers .= "From: someone@someplace.ru\n";
$headers .="Content-Type: multipart/mixed; boundary=\"$boundary\"\n";
?>
|
заменив someone@someplace.ru на нужный адрес. | |
|
|
|
|
|
|
|
для: cheops
(03.12.2004 в 23:01)
| | Помагите пожалуйста мне я не знаю ведь програмирования Мне б и HTML форму отправки.... Очень жду письма на admin@mw-ds.com | |
|
|
|
|
|
|
|
для: Merlin
(26.03.2005 в 20:19)
| | HTML-форма для отправки письма может выглядеть так, как это представлено ниже
<HTML>
<HEAD>
<TITLE>Отправка сообщения</TITLE>
</HEAD>
<BODY>
<H3> <? print "<center>"; ?> <font color=#1E90FF> Отправка сообщения </font></H3>
<center>
<table width=1 border=0>
<form action=handler.php method=post>
<input type=hidden name=action value=post>
<tr>
<td width=50%>To:</td>
<td align=right><input type=text name=mail_to maxlength=32></td>
</tr>
<tr>
<td width=50%>Subject:</td>
<td align=right><input type=text name=mail_subject maxlength=64></td>
</tr>
<tr>
<td colspan=2>Сообщение:<br><textarea cols=50 rows=8 name=mail_msg></textarea>
</td>
</tr>
<tr>
<td width=50%>File:</td>
<td align=right><input type=file name=attach maxlength=32></td>
</tr>
<tr><td colspan=2><input type=submit value='Отправить'></td>
</tr>
</form>
</table>
</center>
</BODY>
</HTML>
|
Её обработчик handler.php содержит в себе проверку на загрузку файла, которая происходит в директорию files (она должна существовать и права доступа на неё должны быть выставлены таким образом, чтобы скрипт мог писать в директорию)
<?php
$picture = "";
// Если поле выбора вложения не пустое - по
if (!empty($_FILES['attach']['tmp_name']) && $_FILES['attach']['tmp_name'] != "-")
{
// Закачиваем файл
$path="files/".$_FILES['attach']['name'];
// Путь указан верно, так как в админе нужно поднятся на два каталога вверх,
// а на сайте на один
if (copy($_FILES['attach']['tmp_name'], $path)) $picture = $path;
}
//
if(empty($picture)) mail($_POST['mail_to'], $_POST['mail_subject'], $_POST['mail_msg']);
else send_mail($_POST['mail_to'], $_POST['mail_subject'], $_POST['mail_msg'], "../".$picture);
?>
|
PS Обычно, при общении в форумах, не принято ответы отсылать на почту. Так как форумы создаются для того, чтобы полученная в ходе обсуждения информация стала достоянием общественности и другие посетители также могли бы воспользоваться этим результатом. Нам, в общем всё-равно, но фраза "Очень жду письма на admin@mw-ds.com" является грубым нарушением сетевой этики - обычно на форумах такие фразы являются красной тряпкой и началом яростного флейма, основной смысл которого сводится к тому, что если у отвечающих находится время разобраться в вопросе и поместить ответ, то спрашивающий должен платить той же монетой и караулить свой ответ в форуме, а не пассивно ждать когда решение само свалиться по почте, "хлеб за брюхом не ходит" и т.д., т.п. | |
|
|
|
|
|
|
|
для: cheops
(26.03.2005 в 21:39)
| | <form action=mail.php method=post>
<input type=file name=path maxlength=32>
<input type=submit value='Отправить'>
Вот форма надо просто отправаить картинку!
Что-то этот код ПХП что в самом верху не пашет !
Может я что-то провтыкал!
Можете плиз написать что надо именно написать в mail.php | |
|
|
|
|
|
|
|
для: ДЯДЯДЯ
(30.04.2005 в 22:15)
| | Приведите плиз код обработчика: как он у вас сейчас выглядит? | |
|
|
|
|
|
|
|
для: cheops
(30.04.2005 в 22:35)
| | Дык, понимаешя что-то не понял!
Какая функция за что отвечает у вас (я же не просто к вам зашел а искал как написать отправку отсюда следует что пользуюсь вашим кодом :)
я что-то не понял последнюю функцию(ну как бы все понятно) но за что она отвечает тоже! но как она связана с самой верхней функцией ?( именно кодом(а так то понятно))
Вообщем вожеш написать полную функцию для отправкти | |
|
|
|
|
|
|
|
для: ДЯДЯДЯ
(30.04.2005 в 23:31)
| | Это просто вызов верхней функции, т.е. верхнуюю функцию следует поместить в файл с обработчиком, где происходит её вызов. Или имеется ввиду что-то другое? | |
|
|
|
|
|
|
|
для: cheops
(30.04.2005 в 23:48)
| | Так как это вызов верхней функции если нижняя функция тоже отправляет почтовое сообщение?
И в коде над тогда прописать нижнюю, потом верхнюю функцию
Стоп! У меня на акшине висит mail.php в нем я пишу нижнюю а потом верхнюю н функцию | |
|
|
|
|
|
|
|
для: ДЯДЯДЯ
(01.05.2005 в 00:33)
| | А не могли бы вы прикрепить файл mail.php к сообщению, чтобы было более понятно о чём речь? | |
|
|
|
|
|
|
|
для: cheops
(01.05.2005 в 01:20)
| | Не понимаете вы написали функцию отправки сообщения с вложением!
Можете написать полностью функцию отправки сообщения с вложением !
(напарился уже и так и сяк не как не хочет!) | |
|
|
|