PDA

View Full Version : سوال: ارسال ایمیل با ایجاد وقفه



iner30
سه شنبه 12 مرداد 1389, 18:06 عصر
سلام خدمت دوستان

من میخوام حدود 500 ایمیل ارسال کنم ، ولی مشکل اینجاست که یه دفعه رو هاست قبلیم این کار رو کردم و مدیر هاست سایت مارو تعطیل کردو ماهم با کلی خواهش و اینکه نمیدونستیم سایت رو پس گرفتیم

الان میخوام دوباره ایمیل بفرستم
چه طوری میشه وقتی من فایلم رو اجرا میکنم هر 1 ساعت 50تا ایمیل بفرسته؟ یعنی میخوام زمان بندیش کنم
من الان آدرس ایمیلام توی یه فایل .txt دخیره شده ، میشه از روی همون فایل آدرس هارو بگیرم و براشون ایمیل ارسال کنم؟

binyaft
سه شنبه 12 مرداد 1389, 19:14 عصر
با کد زیر میتونی بین دستور های زمان بزاری

<?php
sleep(زمان به ثانیه);
?>

iner30
سه شنبه 12 مرداد 1389, 19:18 عصر
این دستور رو خونده بودم ، ولی مثل اینکه اگه به این مقداری بیشتر از 30 ثانیه بدی دیگه کار نمیکنه
درسته؟

و این که این تابع به سرور فشار نمیاره؟

milad89
چهارشنبه 13 مرداد 1389, 09:34 صبح
سلام

اسکریپت ها php دارای یک زمان برای اجرا هستن یعنی اگر در آن زمان مشخص اجرای اسکریپت خاتمه پیدا نکنه اسکریپت متوقف و با خطا مربوطه مواجه میشین این زمان به صورت پیشفرض 30 ثانیه هست برای تغییر این زمان از کد زیر استفاده کن




<?php
ini_set("max_execution_time", 0);

?>



این کد بهتر در بالای بقیه کد هاتون قرار بدین

والبته امکان داره مدیر سرور تابع ini_set رو غیر فعال کرده باشه که در این صورت عملا کاری نمیتونید با php انجام بدین و باید از جاوااسکریپت استفاده کنید

ولی یه راه حله دیگه برای کاری که انجام میخواین بدین شما میتونی 50تا ایمیل رو یک دفعه(بدونه وقفه) ارسال کنید و بعد 1ساعت صبر کنید دوباره 50 ایمیل بعدی دیگه رو ارسال کنید

پیروز باشین

eshpilen
چهارشنبه 13 مرداد 1389, 09:52 صبح
فکر کنم بشه یه برنامه CGI نوشت (با زبانی مثل C یا چیز دیگه) که اینکار رو انجام بده.
من یه دفه برای تست یه برنامهء خیلی ساده نوشتم که هیچ کاری انجام نمیداد ولی Exit هم نمیکرد، و روی دوتا سرور اجراش کردم؛ هر روز با با وبشل چکش میکردم و حدود دو هفته برنامه درحال اجرا بود!!
خوبی CGI اینه که محدودیت زمانی نداره و تحت کنترل آپاچی و پیکربندی های آپاچی و PHP نیست.
اینطور موارد از اونایی هستن که آدم حال میکنه! چون کاربرد توانایی استفاده از چند زبان و فناوری رو در عمل میبینیم. اونم چنین مواردی از فناوریهای قدیمی که خیلی ها منسوخ تلقی میکنن.
بهرحال فکر میکنم بتونید با روشهای دیگه و حتی صرفا با PHP هم این کار رو انجام بدید، و شاید استفاده از روشهای جدیدتر و استانداردتر بهتر باشه (البته شاید روشی هم که من گفتم بازم مزایایی داشته باشه یا زیادم غیراستاندارد نباشه).