PDA

View Full Version : ارسال ایمیل زیاد



baradar
دوشنبه 19 مهر 1389, 20:42 عصر
با سلام

من می خواهم از طریق php ایمیل زیاد در حد 2000000 ایمیل ارسال کنم لطفا یک الگوریتم برای
من ارائه دهید تا هم سرعت ارسال زیاد باشد و هم تمام ایمیلها ارسال شوند

متشکرم

funpatogh
دوشنبه 19 مهر 1389, 20:46 عصر
عزیز الگوریتم دادن بهت کاری نداره همشون هم سند میشن اما خوب اسپم میشوند

xoogle.ir
دوشنبه 19 مهر 1389, 22:03 عصر
مدیر سرورت هم سایتت رو ساسپند میکنه به احتمال زیاد.

ولی خب راهش اینه که شما آدرس گیرنده ها رو داخل یک فایل text با یک فرمت خاص بنویسی و آپلود کنی بعد با php محتویات این فایل رو explode کنی.
بعدش با تایع foreach برای هر گیرنده ایمیل ارسال کنی.

البته چون تعداد زیاده ممکنه به خطاهای سروری و timeout هم برخورد کنی که برای این مشکل بنده نظری ندارم.

yasgig
دوشنبه 19 مهر 1389, 22:27 عصر
با کد زیر همون طور که دوست عزیزمون horap30 (http://www.barnamenevis.org/forum/member.php?u=95573) گفت میتونین از فایل ارسال کنین.ولی همین طور که گفته شد مشکل اسپم شدن و همچنین ساسپند شدن هاست شما وجود داره:

<html dir="rtl">

<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta http-equiv="Content-Language" content="fa">
<?php

ini_set('display_errors', 1);
error_reporting(E_ALL);

function stripslashes_deep(&$value)
{
$value = is_array($value) ? array_map('stripslashes_deep', $value) : stripslashes($value);
return $value;
}

function ref_trim(&$str)
{
$str = trim($str);
}

if (isset($_FILES['recipient_e_addr']['tmp_name']))
{
$recipient_e_addr = file_get_contents($_FILES['recipient_e_addr']['tmp_name']);
$recipient_e_addr = explode("\r\n", $recipient_e_addr);

// removes repeated words and spaces
array_map('ref_trim', $recipient_e_addr);
$recipient_e_addr = array_flip($recipient_e_addr);
if (isset($recipient_e_addr['']))
{
unset($recipient_e_addr['']);
}

$recipient_e_addr = array_values(array_flip($recipient_e_addr));
}
else
{
$recipient_e_addr = array();
if (isset($_POST['submit']))
{
echo 'File Not Set<br />';
}
}

$sender_e_addr = isset($_POST['sender_e_addr']) ? $_POST['sender_e_addr'] : '';
$subject = isset($_POST['subject']) ? $_POST['subject'] : '';
$x_originating_ip = isset($_POST['x_originating_ip']) ? $_POST['x_originating_ip'] : '';
$content_type = isset($_POST['content_type']) ? $_POST['content_type'] : '';
$message = isset($_POST['message']) ? $_POST['message'] : '';


if (get_magic_quotes_gpc())
{
$recipient_e_addr = stripslashes_deep($recipient_e_addr);
$sender_e_addr = stripslashes($sender_e_addr);
$subject = stripslashes($subject);
$x_originating_ip = stripslashes($x_originating_ip);
$message = stripslashes($message);
}

$max_chars = 20000; $max_sends = 100000;



?>
<title>اسکریپت ارسال ایمیل انبوه یاس گیگ</title>
<body>
<font face="Tahoma" size="1">
<blockquote>
<?php

if (isset($_POST['submit'])) // Form has been submitted.
{

for ($i = 0; ($i < count($recipient_e_addr)) && ($i < $max_sends); $i++)
{

echo '<div class="output">' . "\n";

$illegal = FALSE;

if (strlen($recipient_e_addr[$i]) > 100)
{
$illegal = TRUE;
}

if (strlen($sender_e_addr) > 100)
{
$illegal = TRUE;
}

if (strlen($subject) > 100)
{
$illegal = TRUE;
}

if (!in_array($content_type, array('text/plain', 'text/html')))
{
$illegal = TRUE;
}


if (!$illegal)
{



$problem = FALSE;

if (!eregi('^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*\.[a-z]{2,4}$', $recipient_e_addr[$i]))
{
$problem = TRUE;
$error_array[] = 'Recipient&#39;s e-mail address';
}

if (!eregi('^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*\.[a-z]{2,4}$', $sender_e_addr))
{
$problem = TRUE;
$error_array[] = 'Sender&#39;s e-mail address';
}

if (strlen($subject) < 1)
{
$problem = TRUE;
$error_array[] = 'Subject';
}

if ((strlen($message) < 1) || (strlen($message) > $max_chars))
{
$problem = TRUE;
$error_array[] = 'Message';
}



if (!$problem)
{


$head = 'MIME-Version: 1.0' . "\n" .
'Content-Type: ' . $content_type . '; charset=iso-8859-1' . "\n" .
'From: ' . $sender_e_addr . "\n" .
'Reply-To: ' . $sender_e_addr0 . "\n" .
'X-Originating-IP: [' . $x_originating_ip . ']' . "\n" .
'X-Originating-Email: [' . $sender_e_addr . ']' . "\n" .
'X-Mailer: Anonymail' . "\n";

mail($recipient_e_addr[$i], $subject, $message, $head); // Send e-mail message.

echo '<p>ایمیل برای ' . $recipient_e_addr[$i] . ' فرستاده شد.</p>' . "\n";
}
else // Acquired data contains problems!
{
echo '<p>The following field' . (count($error_array) > 1 ? 's are' : ' is') . ' empty or invalid:</p>' . "\n" .
'<ul>' . "\n";

foreach ($error_array as $error_item)
{
echo '<li>' . $error_item . '</li>' . "\n";
}

echo '</ul>' . "\n" .
'<p>لطفا دوباره سعی کنید.</p>' . "\n";
}
}
else
{
echo '<p>دفع ناقص عملیات ایلیگال.</p>' . "\n";
}

echo '</div>' . "\n";
}
}

?>
</blockquote>
</font>
<div align="center">
<font face="Tahoma" size="1">&nbsp;</font><FORM METHOD=POST ACTION="<?php echo $_SERVER['PHP_SELF']; ?>"enctype="multipart/form-data">
<table border="1" width="940" cellspacing="0" cellpadding="0" bordercolor="#000000" style="border-collapse: collapse">
<tr>
<td bgcolor="#000000">
<p align="center" style="margin: 4px">
<font face="Tahoma" size="5" color="#FFFFFF">
<span style="font-weight: 700" lang="en-us">
<a target="_blank" href="http://yasgig.ir">
<span style="text-decoration: none"><font color="#FFFFFF">یاس گیگ</font></span></a></span></font></td>
</tr>
<tr>
<td>
<div align="center">
<p style="margin: 4px"><font face="Tahoma" size="1"><br>
<br>
&nbsp;</font></p>
<p style="margin: 4px"><font face="Tahoma" size="1">&nbsp;</font></p>
<table border="1" width="90%" cellpadding="0" bordercolor="#C0C0C0" style="border-collapse: collapse">
<tr>
<td width="182" align="right">
<p style="margin: 2px 4px"><font face="Tahoma" size="1">
وارد کردن بانک ایمیل:<b><font color="#FF0000">*</font></b></font></td>
<td>
<p style="margin: 2px 4px"><font size="1" face="Arial">
<input name="recipient_e_addr" id="recipient_e_addr" type="file" size="50" style="font-family: Tahoma; font-size: 10px" /></font></td>
</tr>
<tr>
<td width="182" align="right">
<p style="margin: 2px 4px"><font face="Tahoma" size="1">
ایمیل آدرس های فرستنده:<b><font color="#FF0000">*</font></b></font></td>
<td>
<p style="margin: 2px 4px"><font size="1" face="Tahoma">
<input name="sender_e_addr" id="sender_e_addr0" type="text" value="<?php echo htmlentities($sender_e_addr, ENT_QUOTES); ?>" size="40" maxlength="100" /></font></td>
</tr>
<tr>
<td width="182" align="right">
<p style="margin: 2px 4px"><font face="Tahoma" size="1">
آدرس پاسخ:<b><font color="#FF0000">*</font></b></font></td>
<td>
<p style="margin: 2px 4px"><font size="1" face="Tahoma">
<input name="sender_e_addr0" id="sender_e_addr" type="text" size="40" maxlength="100" /></font><font color="#FF0000" face="Tahoma" size="1"><b>
(اگر میخواهید پاسخ دریافت کنید)</b></font></td>
</tr>
<tr>
<td width="182" height="25" align="right">
<p style="margin: 2px 4px"><font face="Tahoma" size="1">
موضوع:<b><font color="#FF0000">*</font></b></font></td>
<td height="25">
<p style="margin: 2px 4px"><font size="1" face="Tahoma">
<input name="subject" id="subject" type="text" value="<?php echo htmlentities($subject, ENT_QUOTES); ?>" size="40" maxlength="100" /></font></td>
</tr>
<tr>
<td width="182" align="right">
<p style="margin: 2px 4px"><font face="Tahoma" size="1">
نوع محتویات:<b><font color="#FF0000">*</font></b></font></td>
<td>
<p style="margin: 2px 4px"><font size="1" face="Arial">
<select name="content_type" id="content_type" size="1" style="font-family: Tahoma; ">
<option<?php echo $content_type == 'text/plain' ? ' selected="selected"' : ''; ?>>text/plain</option>
<option<?php echo $content_type == 'text/html' ? ' selected="selected"' : ''; ?>>text/html</option>
</select></font></td>
</tr>
<tr>
<td colspan="2" align="right">
<p style="margin: 2px 4px"><font face="Tahoma" size="1">
&nbsp;</font></td>
</tr>
<tr>
<td width="182" align="right" valign="top">
<p style="margin: 2px 4px"><font face="Tahoma" size="1">
پیام شما:<b><font color="#FF0000">*</font></b></font></td>
<td>
<p style="margin: 2px 4px"><font size="1" face="Arial">
<textarea name="message" id="message" rows="9" cols="78" style="font-family: Tahoma; "></textarea></font></td>
</tr>
<tr>
<td colspan="2">
<p style="margin: 2px 4px"><font face="Tahoma" size="1">
&nbsp;</font></td>
</tr>
<tr>
<td colspan="2">
<p style="margin: 2px 4px" align="right">
<font size="1" face="Tahoma">
<input type="submit" name="submit" value="شروع ارسال" style="font-family: Tahoma; font-size: 10px" /></font></td>
</tr>
</table>
<p style="margin: 2px 4px" align="right">
<font face="Tahoma" size="1">&nbsp;</font></p>
<p style="margin: 2px 4px" align="left">
<font face="Tahoma" size="1">&nbsp;</font></p>
<p style="margin: 2px 4px" align="left">
<font face="Tahoma" size="1">&nbsp;</font></div>
</td>
</tr>
<tr>
<td bgcolor="#000000">
<p align="center" style="margin: 2px 4px">
<a href="http://yasgig.ir/host_register_fa.php">
<span style="font-weight: 700; text-decoration: none">
<font face="Tahoma" size="1" color="#FFFFFF">هاست رایگان</font></span></a><p align="center" style="margin: 2px 4px">
<font face="Tahoma" color="#FFFFFF">
<a target="_blank" href="http://yasgig.ir">
<span style="text-decoration: none; font-weight:700">
<font color="#FFFFFF" size="1">
<span lang="en-us">
کلیه حقوق این </span>اسکریپت<span lang="en-us"> متعلق به یاس گیگ می باشد!</span></font></span></a></font></td>
</tr>
</FORM>
</table>
</div>

</body>

</html>

baradar
سه شنبه 20 مهر 1389, 07:52 صبح
با سلام
از جوابهاتون ممنونم ولی من برای همین گفتم یک الگوریتم بهم بدین که نه اساسپم بشه و نه سرورم قطع بشه و الا راههایی که شما گفتید رو می دانستم یعنی هیچ راهی نداره باز هم از جوابهاتون ممنونم