|
e-mail с вложениемОбсуждение темы e-mail с вложением в разделе ASP, Perl, PHP и MySQL, часть категории ВЕБ-ПРОГРАММИРОВАНИЕ; Помогите пожалуйста с таким вопросом, у меня на сайте есть форма отправки письма администратору, заполнил поля и нажал сабмит, столкнулся с таким вопросом ... |
|
Опции темы |
01.06.2010, 17:18 | #1 |
|
Помогите пожалуйста с таким вопросом, у меня на сайте есть форма отправки письма администратору, заполнил поля и нажал сабмит, столкнулся с таким вопросом что нужно еще что бы отправляло вложение как это сделать? Вот код:
Код:
<?php if(isset($_POST['name'])) { $name = $_POST['name']; } if(isset($_POST['thurname'])) { $thurname = $_POST['thurname']; } if(isset($_POST['vacansy'])) { $vacansy = $_POST['vacansy']; } if(isset($_POST['tel'])) { $tel = $_POST['tel']; } if(isset($_POST['filename'])) { $filename = $_POST['filename']; } if(isset($_POST['pr'])) { $pr = $_POST['pr']; } if (isset($name)) {trim($name); } else {$name = "";} if (isset($thurname)) {trim($thurname); } else {$thurname = "";} if (isset($vacansy)) {trim($vacansy); } else {$vacansy = "";} if (isset($tel)) {trim($tel); } else {$tel = "";} if (isset($filename)) {trim($filename); } else {$filename = "";} if (isset($pr)) {trim($pr); } else {$pr = "";} if (empty($name) or empty($thurname) or empty($vacansy) or empty($tel) or empty($filename) or empty($pr) ) { exit ("<p align=center>Вы заполнили не все поля, вернитесь назад и заполните все поля.<br><input type='button' onclick='history.back()' value='Вернуться назад'> "); } $date = date("Y-m-d"); $adddress = "[email protected]"; $subject = "Новое резюме с сайта никвер (.$vacansy.)"; $message = "Новое письмо от посетителя: Фамилия: ".$thurname."\n Имя: ".$name."\n Тема письма: Кандидат на вакансию ".$vacansy."\n Контактный тел.: ".$tel."\n Резюме: ".$filename."\n Дата: ".$date."\n"; mail($adddress,$subject,$message,"Content-type:text/plain; charset = windows-1251"); echo "<html><head> <meta http-equiv='Refresh' content='0; URL=../vacansy.php'> </head></html>"; exit(); ?> Добавлено через 3 часа 19 минут Вроде бы как нашел решение, но что то работать не хочет, посмотрите плиз: ВОТ КОД ФОРМЫ (файл test.php): Код:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=windows-1251" /> <title>Документ без названия</title> </head> <body> <form action="send.php" method="post" name="form_com"> <table width="500" border="0" cellpadding="0" cellspacing="0"> <tr> <td width="100"><div align="left" style="margin-top:10px"><strong>Имя:</strong></div></td> <td><div align="left" style="margin-top:10px"><input type="text" name="name" id="name"></div></td> <td width="100"><div align="left" style="margin-top:10px"><strong>Фамилия:</strong></div></td> <td><div align="left" style="margin-top:10px"><input type="text" name="thurname" id="thurname"></div></td> </tr> <tr> <td><div align="left" style="margin-top:10px"><strong>Должность: </strong></div></td> <td><div align="left" style="margin-top:10px"><input type="text" name="vacansy" size="20"></div></td> <td><div align="left" style="margin-top:10px"><strong>Тел.:</strong></div></td> <td><div align="left" style="margin-top:10px"><input type="text" name="tel" size="20" onKeypress="if (event.keyCode < 45 || event.keyCode > 57) event.returnValue = false;"></div></td> </tr> <tr> <td colspan="3"><div align="center" style="margin-top:10px"><strong>Добавить резюме:</strong></div></td> <td><div align="center" style="margin-top:10px"><input type=file name=filename></div></td> </tr> <tr> <td colspan="3"><div align="center" style="margin-top:10px"><strong>Введите код: nikver</strong></div></td> <td><div align="center" style="margin-top:10px"><input type="text" name="pr" size="10"></div></td> </tr> <tr> <td colspan="4"><div align="center" style="margin-top:10px"><input name="sum_com" type="submit" value="Отправить"><input name="reset" type="reset" value="Сброс"></div></td> </tr> </table> </form> </body> </html> Вот код обробатывающего файла (send.php): Код:
<?php function XMail( $from, $to, $subj, $text, $filename=FALSE) { $f = fopen($filename,"rb" ; $un = strtoupper(uniqid(time())); $head = "From: $from\n"; $head .= "To: $to\n"; $head .= "Subject: $subj\n"; $head .= "X-Mailer: PHPMail Tool\n"; $head .= "Reply-To: $from\n"; $head .= "Mime-Version: 1.0\n"; $head .= "Content-Type:multipart/mixed;"; $head .= "boundary=\"----------".$un."\"\n\n"; $zag = "------------".$un."\nContent-Type:text/html;\n"; $zag .= "Content-Transfer-Encoding: 8bit\n\n$text\n\n"; $zag .= "------------".$un."\n"; $zag .= "Content-Type: application/octet-stream;"; $zag .= "name=\"".basename($filename)."\"\n"; $zag .= "Content-Transfer-Encoding:base64\n"; $zag .= "Content-Disposition:attachment;"; $zag .= "filename=\"".basename($filename)."\"\n\n"; $zag .= chunk_split(base64_encode(fread($f,filesize($filename))))."\n"; if (!@mail("$to", "$subj", $zag, $head)) return 0; else return 1; } if(isset($_POST['name'])) { $name = $_POST['name']; } if(isset($_POST['thurname'])) { $thurname = $_POST['thurname']; } if(isset($_POST['vacansy'])) { $vacansy = $_POST['vacansy']; } if(isset($_POST['tel'])) { $tel = $_POST['tel']; } if(isset($_POST['filename'])) { $filename = $_POST['filename']; } if(isset($_POST['pr'])) { $pr = $_POST['pr']; } if (isset($name)) {trim($name); } else {$name = "";} if (isset($thurname)) {trim($thurname); } else {$thurname = "";} if (isset($vacansy)) {trim($vacansy); } else {$vacansy = "";} if (isset($tel)) {trim($tel); } else {$tel = "";} if (isset($filename)) {trim($filename); } else {$filename = "";} if (isset($pr)) {trim($pr); } else {$pr = "";} if (empty($name) or empty($thurname) or empty($vacansy) or empty($tel) or empty($filename) or empty($pr) ) { exit ("<p align=center>Вы заполнили не все поля, вернитесь назад и заполните все поля.<br><input type='button' onclick='history.back()' value='Вернуться назад'> " ; } $date = date("Y-m-d" ; $adddress = "[email protected]"; $subject = "Новое резюме с сайта никвер (Вакансия: $vacansy)"; $file = ".$filename."; $message = "Новое письмо от посетителя:\n Фамилия: ".$thurname."\n Имя: ".$name."\n Тема письма: Кандидат на вакансию ".$vacansy."\n Контактный тел.: ".$tel."\n Резюме: ".$filename."\n Дата: ".$date."\n"; //mail($adddress,$subject,$message,"Content-type:text/plain; charset = windows-1251" ; if(is_uploaded_file($_FILES['filename']['tmp_name'])) { XMail( "[email protected]", $adddress, $subject, $message, $_FILES['filename']['tmp_name']); } else { mail($adddress,$subject,$message,"Content-type:text/plain; charset = windows-1251" ; } echo "<html><head> <meta http-equiv='Refresh' content='0; URL=../vacansy.php'> </head></html>"; exit(); ?> Последний раз редактировалось web_smile; 01.06.2010 в 17:18.. Причина: Добавлено сообщение |
|
03.06.2010, 01:30 | #2 |
|
|
|
03.06.2010, 15:25 | #3 |
|
|
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
mail в php | redreem | ASP, Perl, PHP и MySQL | 0 | 20.05.2011 22:51 |
Что такое с mail.ru? | GLUK | Кальянная | 7 | 18.03.2006 22:35 |
mail(); | DiV | ASP, Perl, PHP и MySQL | 9 | 10.01.2006 03:20 |
php + mail | vision | HTML, CSS, JavaScript | 1 | 04.04.2005 05:36 |
Отправка сообщения с сайта с вложением файла | Spy | Зал дебютантов | 1 | 06.11.2003 01:34 |
Реклама на форуме
Условия размещения рекламы
Биржа ссылок
Заработай на сайте!
|