PDA

View Full Version : فوری - پیغام Request Timeout



hamedg1366
پنج شنبه 04 تیر 1394, 11:05 صبح
با سلام و عرض ادب خدمت دوستان عزیز

من یه مبتدی در برنامه نویسی وب و php هستم لطفا کمکم کنید

با کمک کد های زیر اطلاعات یه تگ رو از سایتی در میارم ،


function get_online($path){

libxml_use_internal_errors(true);
$domain = $path;
$dom = new DOMDocument();
$dom->loadHTMLFile($domain);
$xpath = new DomXpath($dom);
$elements= $xpath->query("//body/div/div[6]/div[3]/div");

foreach ($elements as $t ){
$res1= $t->nodeValue;
}

return ($res1);
}

$page_in = get_online("http://www..../");

$page_in = trim($page_in);





تابع get_online رو برای 7 صفحه مورد نیازم فراخوانی میکنم .

تا چند روز پیش ظبق اطلاعات Cron Jobs که برام ایمیل میزد هیچ مشکلی نبود اما الان متاسفانه خطای زیر رو میده :


Request Timeout This request takes too long to process, it is timed out by the server. If it should not be timed out, please contact administrator of this web site to increase 'Connection Timeout'.






با آزمون خطا فهمیدم که

18 ثانیه طول میکشه اگه 1 بار تابع get_online فراخاونی کنم

55 ثانیه طول میکشه اگه 2 بار تابع get_online رو فراخوانی کنم

1.14 ثانیه برای 3 بار فراخوانی

و برای فراخوانی 7 صفحه پیغام خطا رو میده

hamedg1366
پنج شنبه 04 تیر 1394, 13:50 عصر
دوستان لطفا کمک کنید ، مشکل از کد های من هس یا از سرعت هاستم؟؟؟؟


عزیزان دست تنها نذارین

H:Shojaei
پنج شنبه 04 تیر 1394, 14:12 عصر
توی حلقه foreach چیزی چاپ کنید احتمالا حلقه بینهایت هست...

hamedg1366
پنج شنبه 04 تیر 1394, 18:28 عصر
دوست عزیز ضمن تشکر با تشکر از شما


امتحان کردم برای هر بار فراخوانی حلقه مورد نظر 4 بار !!!!! اجرا میشه !!؟ حالا چرا 4 بار نمیدونم ! یعنی بخاطر همین هس ؟؟؟؟؟؟؟؟؟؟؟؟؟

hamedg1366
پنج شنبه 04 تیر 1394, 23:41 عصر
عزیزان لطفا کمک کنید ... من موندم و این خطای نامرد آخه


در این زمینه آماتورم خب،،،، اگه راه دیگه ای هس برای لود کردن صفحه خواهشن بگین ... دیگه نمیدونم چطور درخواست راهنمائی بدم :ناراحت:

H:Shojaei
جمعه 05 تیر 1394, 00:26 صبح
شرح کاملتری از کاری میخواید انجام بدین بدین... اینطوری فهمیده نمیشه چکار میخواید انجام بدین...

hamedg1366
جمعه 05 تیر 1394, 09:34 صبح
در تلاشم اطلاعات یه سایت رو استخراج کنم و توی دیتابیس خودم ذخیره کنم.

قبلا موفق به انجام اینکار شدم ، حالا برای اینکه بدونم _ صفحه _ سایت مورد نظرم محتویاتش تغییر کرده ، میام با کمک تابع بالا اون رو توی یه متغییر میریزم و فیلد مد نظر رو استخراج میکنم ___ در ادامه هم با فیلد دیتا بیس مقایسه میکنم , در صورت نیاز آپدیتش میکنم __


اگه لود صفحه درون یک متغییر کار اصولی نیس ؟ یا دستورات من استاندارد نیستن که باعث خطا میشن ؟ آیا راه حل بهتری برای اینکار وجود داره ؟

hamedg1366
جمعه 05 تیر 1394, 13:48 عصر
ای وای


ای وای