PDA

Просмотр полной версии : У кого есть скрипт почты???


4NT1P0V
15.04.2008, 23:56
У кого есть скрипт для анонимной отправки почты с вложениями...??

Sleep
16.04.2008, 01:16
https://forum.antichat.ru/showpost.php?p=330793&postcount=65

Isis
16.04.2008, 02:37
index.php

<HTML>
<HEAD>
<TITLE>Отправка сообщения с вложением</TITLE>
</HEAD>
<BODY>
<H3> <center><font color=#1E90FF>Отправка сообщения с вложением</font></H3>
<center>
<table width=1 border=0>
<form action='mail.php' enctype='multipart/form-data' method='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><td width=50%>Photo:</td><td align=right><input type=file name=mail_file maxlength=64></td></tr>
</tr><tr><td colspan=2><input type=submit value='Отправить'></td></tr>
</form>
</table>
</center>
</BODY>
</HTML>

mail.php

<?php

if(empty($_POST['mail_to'])) exit("Введите адрес получателя");

// проверяем правильности заполнения с помощью регулярного выражения

if (!preg_match("/^[0-9a-z_]+@[0-9a-z_^\.]+\.[a-z]{2,3}$/i", $_POST['mail_to'])) exit("Введите адрес в виде somebody@server.com");

$picture = "";

// Если поле выбора вложения не пустое - закачиваем его на сервер

if (!empty($_FILES['mail_file']['tmp_name']))

{

// Закачиваем файл

$path = $_FILES['mail_file']['name'];

if (copy($_FILES['mail_file']['tmp_name'], $path)) $picture = $path;

}

$thm = $_POST['mail_subject'];

$msg = $_POST['mail_msg'];

$mail_to = $_POST['mail_to'];

// Отправляем почтовое сообщение

if(empty($picture)) mail($mail_to, $thm, $msg);

else send_mail($mail_to, $thm, $msg, $picture);

// Вспомогательная функция для отправки почтового сообщения с вложением (Trianon)

function send_mail($mail_to, $thema, $html, $path)

{ if ($path) {

$fp = fopen($path,"rb");

if (!$fp)

{ print "Cannot open file";

exit();

}

$file = fread($fp, filesize($path));

fclose($fp);

}

$name = "file.ext"; // в этой переменной надо сформировать имя файла (без всякого пути)

$EOL = "\r\n"; // ограничитель строк, некоторые почтовые сервера требуют \n - подобрать опытным путём

$boundary = "--".md5(uniqid(time())); // любая строка, которой не будет ниже в потоке данных.

$headers = "MIME-Version: 1.0;$EOL";

$headers .= "Content-Type: multipart/mixed; boundary=\"$boundary\"$EOL";

$headers .= "From: address@server.com";



$multipart = "--$boundary$EOL";

$multipart .= "Content-Type: text/html; charset=windows-1253$EOL";

$multipart .= "Content-Transfer-Encoding: base64$EOL";

$multipart .= $EOL; // раздел между заголовками и телом html-части

$multipart .= chunk_split(base64_encode($html));



$multipart .= "$EOL--$boundary$EOL";

$multipart .= "Content-Type: application/octet-stream; name=\"$name\"$EOL";

$multipart .= "Content-Transfer-Encoding: base64$EOL";

$multipart .= "Content-Disposition: attachment; filename=\"$name\"$EOL";

$multipart .= $EOL; // раздел между заголовками и телом прикрепленного файла

$multipart .= chunk_split(base64_encode($file));



$multipart .= "$EOL--$boundary--$EOL";



if(!mail($mail_to, $thema, $multipart, $headers))

{return False; //если не письмо не отправлено

}

else { //// если письмо отправлено

return True;

}

exit;

}

?>

4NT1P0V
16.04.2008, 15:04
Isis Спасибо! но при отправке почты с вложением ошибка((
Warning: copy(файл.txt) [function.copy]: failed to open stream: Permission denied in vzlom.in/public_html/tools/mmail/mail.php on line 21

SeGaLWS
16.04.2008, 15:38
chmod на папку mmail проставь