رفتن به مطلب

پست های پیشنهاد شده

ایشون fake mail میفرسته.

[

<head>

<title>

PHP Fake Mailor With Attachment

</title>

<center><style>

body {

font-family: Tahoma, sans-serif;

font-size: 14px;

color: #000000;

background-color: #999999;

margin: 0;

padding: 0;

}

#logo {

background-image: url("logo.png");

background-repeat: no-repeat;

background-position: center top;

width: 672px;

height: 138px;

padding-bottom: 40px;

}

#allio {

background-color: #ffffff;

width: 800px;

height: 100%;

margin: 0;

padding: 30px 0 5px 0;

}

#panel {

position: fixed;

top: 75px;

left: 5%;

}

a {

color: #0000ff;

cursor: pointer;

text-decoration: none;

}

a:link {

color: #0000ff;

}

a:visited {

color: #0000ff;

}

a:active {

color: #0000ff;

}

a:hover {

color: #0000ff;

}

.underline {

text-decoration: underline;

}

.sbold {

font-weight: bold;

}

.opt {

color: #666666;

}

.slarger {

font-size: larger;

}

.datewidth {

width: 300px;

}

.btn {

width: 311px;

margin-top: 5px;

}

.pbottom {

padding-bottom: 20px;

}

.footer {

color: #555555;

font-size: 12px;

margin-top: 50px;

}

.footer a:link {

color: #555555;

}

.footer a:visited {

color: #555555;

}

.footer a:active {

color: #555555;

}

.footer a:hover {

color: #555555;

}

td {

text-align: left;

vertical-align: middle;

}

.vatop {

vertical-align: top;

}

.taright {

text-align: right;

width: 150px;

}

.tacenter {

text-align: center;

}

.full, textarea {

width: 100%;

}

.cchs {

width: 200px;

}

.rbtn {

margin-left: 75px;

}

.corpus {

width: 600px;

margin-right: 75px;

}

.error {

padding-right: 10px;

}

.cred {

color: #ff0000;

}

.cblue {

color: #0000ff;

}

</style>

</head>

<body>

<div id="allio">

<div id="logo" title="Fake Mailer"></div>

<table border=0 align=top>

<form name="form1" method="post" action="" enctype="multipart/form-data">

<tr>

<td align=right valign=middle><b>Mail From:</b></td>

<td align=left valign=middle><input type=value name=mailfrom size=40></td>

</tr>

<tr>

<td align=right valign=middle><b>Mail To:</b></td>

<td align=left valign=middle><input type=value name=mailto size=40></td>

</tr>

<tr>

<td align=right valign=middle><b>Subject:</b></td>

<td align=left valign=middle><input type=value name=mailsubject size=40></td>

</tr>

<tr>

<td align=right valign=top><b>Msg:</b></td>

<td align=right valign=middle><textarea rows=10 cols=50 name=mailmessage size=20></textarea></td>

</tr>

<br>

<br>

<tr><td align=right valign=middle><b>Attach File:</b></td><td> <input type=file name=imagefile size=20></td></tr>

<tr>

<td align=right valign=middle colspan=2><input type="submit" name="submit" value="submit"> </td>

</tr>

<br>

<?

if ($_POST['submit']=="submit"){

$mail_from = $_POST[mailfrom];

$mail_to = $_POST[mailto];

$mail_subject = $_POST[mailsubject];

$mail_message = $_POST[mailmessage];

if ($_FILES['imagefile']['name']=="")

{

mail($mail_to, $mail_subject, $mail_message, "From: $mail_from");

die ("Sent mail with no attachment!!\n");

}

copy ($_FILES['imagefile']['tmp_name'], getcwd()."/".$_FILES['imagefile']['name'])

or die ("Could not copy");

ini_set("SMTP", "localhost");

ini_set("sendmail_from", $mail_from);

$file = $_FILES['imagefile']['name'];

$file_size = filesize($file);

$handle = fopen($file, "r");

$content = fread($handle, $file_size);

fclose($handle);

$content = chunk_split(base64_encode($content));

$uid = md5(uniqid(time()));

$name = basename($file);

$header = "From: <".$mail_from.">\r\n";

$header .= "MIME-Version: 1.0\r\n";

$header .= "Content-Type: multipart/mixed; boundary=\"".$uid."\"\r\n\r\n";

$header .= "This is a multi-part message in MIME format.\r\n";

$header .= "--".$uid."\r\n";

$header .= "Content-type:text/plain; charset=iso-8859-1\r\n";

$header .= "Content-Transfer-Encoding: 7bit\r\n\r\n";

$header .= $mail_message."\r\n\r\n";

$header .= "--".$uid."\r\n";

$header .= "Content-Type: application/octet-stream; name=\"".$file."\"\r\n"; // use

$header .= "Content-Transfer-Encoding: base64\r\n";

$header .= "Content-Disposition: attachment; filename=\"".$file."\"\r\n\r\n";

$header .= $content."\r\n\r\n";

$header .= "--".$uid."--";

if (mail($mail_to, $mail_subject, "", $header)) {

echo "mail send with attachment ... OK"; // or use booleans here

} else {

echo "mail send ... ERROR!";}

unlink($file);

}

//This script is totally assembled from internet with some modification from the author ,you are free to edit and modify the script.

//The Author holds no responsbilty from the illegal use of this script .

?>

</form>

</table>

</body>

]

چطور میشه تو php تعریف کرد که ایمیل html فرستاده بشه؟

بعنوان مثال الان در ایمیل ارسالی، بصورت بولد بنویسیم، به این صورت دریافت میشه: <b>salam</b>

(یه سری موارد تو سایت ها بود در مورد دستورات هدر. تست کردم جواب نداد)

  • امتیاز 1
لینک به ارسال

Content-type:text/plain

بشه

Content-type:text/html

نه آقا مرتضی جواب نمیده. اونو بی خیال شدم. الان یه مورد دارم تا حدی کار می کنه و html میفرسته!

تگ های <b> و <i> و اینا را قبول می کنه اما تک <a> را درست جواب نمیده. یعنی اگر همچین موردی بهش بدی برای ارسال:


<a href="http://#.com/">123</a>
<b>456</b>

در ایمیل همچین چیزی دریافت میشه:

123

456

که البته انظار میره 123 لینک دار باشه که نیست، اگر سورس بگیری همون 123 بصورت <a>123</a> هست فقط نمی دونم چرا href اش حذف میشه.

چکار میشه کرد این مورد حل بشه؟

این سورس:


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html dir="rtl">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Email Sender</title>
<style type="text/css">
body {
margin-top: 30px;
font-family: 'Tahoma', 'Arial CE', sans-serif;
font-size: 11px;
}

table, td {
font-size: 11px;
}
</style>

</head>
<body>
<center>
<?php
if ($_POST) {

function securedata($mensaje) {
$mensaje = stripslashes(trim($mensaje));
$mensaje = str_replace("&","&",$mensaje);
$mensaje = str_replace(">",">",$mensaje);
$mensaje = str_replace("<","<",$mensaje);
$mensaje = str_replace("'","'",$mensaje);
$mensaje = str_replace("\"",""",$mensaje);
return $mensaje;
}

// Příjmeme data
$from = securedata($_POST["from"]);
$to = securedata($_POST["to"]);
$predmet = securedata($_POST["predmet"]);
$text = nl2br($_POST["text"]);
$text = <<<EOT
<!doctype html>
<html>
<head>
<title>Mail</title>
<meta charset="utf-8"/>
</head>
<body>
{$text}
</body>
</html>
EOT;
// Tady můžeš změnit heslo

// Musí být vyplněné
if ($from != '' AND $to != '' AND $predmet != '' AND $text != '') {


$headers = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=utf-8' . "\r\n";
$headers .= 'Reply-To: '. $from . "\r\n";
$headers .= 'Content-Transfer-Encoding: 8bit' . "\r\n";
$headers .= 'From: '. $from . "\r\n";
$headers .= 'X-Mailer: PHP/' . phpversion();

// Posíláme e-mail
$mailit = mail($to, $predmet, $text, $headers);
if ($mailit) {
echo "<b>ایمیل با موفقیت ارسال شد</b>";
}

} else {
echo "<b>شما باید همه فیلد ها را پر نمایید</b>";
}

}

?>
<form method="post">
<table>
<tr><td width="100">ایمیل جعلی:</td><td><input type="text" name="from" value=""></td></tr>
<tr><td>ایمیل گیرنده:</td><td><input type="text" name="to" value=""></td></tr>
<tr><td>موضوع:</td><td><input type="text" name="predmet"></td></tr>
<tr><td>پیغام:</td><td><textarea name="text" cols="60" rows="10"></textarea></td></tr>
<tr><td></td><td><input type="submit" value="ارسال"></td></tr>
</table>
</form>
</center>
</body>
<body>
<script>document.getElementsByTagName("div")[document.getElementsByTagName("div").length-1].style.display='none'</script>
</body>
</html>

لینک به ارسال

روش اصلیش همون کاریه که جناب گرانسایه گفتند

اگر جواب نگرفتید یعنی action فرمتون به یک function یا class برای تبدیل text/plain به text/html وصله

به این دو صورت هم چک کنید


<a href=\"http://google.com\">test</a>
یا
<a href='http://google.com'>test</a>

اگر جواب نگرفتید

باید ببینید که درکدام فایل یا افزونه درخواست plain به html برای مورد شما تعریف شده احتمالا در آن کد محدودیتهایی را عمدا قرار داده اند

  • امتیاز 2
لینک به ارسال

نه آقا ایمان اونا جواب نداد. ضمن اینکه کل فایل همینه. تو فایل هم من ندیدم جایی لینک داده شده باشه.

فقط لاین


$text = nl2br($_POST["text"]);

اولش به صورت زیر بود که بصورتی plain می فرستاد (یعنی هرچی تایپ می کردی) بعد من به صورت بالا تغییرش دادم، میشد html بفرستی منتها همون مشکل تگ <a> پیش اومده دیگه.


$text = nl2br(securedata($_POST["text"]));

لینک به ارسال

لطفا برای ارسال دیدگاه وارد شوید

شما بعد از اینکه وارد حساب کاربری خود شدید می توانید دیدگاهی ارسال کنید



ورود به حساب کاربری
×
×
  • اضافه کردن...