PDA

View Full Version : سوال: کش کردن اطلاعاتی که پی اچ پی برای جی کوئری می فرسته



idocsidocs
شنبه 24 دی 1390, 21:48 عصر
کش کردن اطلاعاتی که پی اچ پی برای جی کوئری می فرسته به چه صورت هست؟

لطفا حالتهای زیر رو توضیح بدید:
1- محتویات ارسال شده برای همیشه کش بشن
2- محتویات ارسال شده برای 1 ساعت کش بشن
3- محتویات ارسال شده اصلا در حافظه کش ذخیره نشن.

برای این موارد در توی پی اچ پی و توی جی کوئری باید چیکار کنم؟

ravand
یک شنبه 25 دی 1390, 08:25 صبح
ببخشيد من اين اصلاح كش كردن رو نمي فهمم ميشه توضيح بديد؟

idocsidocs
یک شنبه 25 دی 1390, 10:10 صبح
ببخشيد من اين اصلاح كش كردن رو نمي فهمم ميشه توضيح بديد؟

وقتی یه فایل کش می شه، موقع مشاهده مجدد اون صفحه، فایل کش شده دیگه از سرور گرفته نمی شه و بجاش فایل موجود توی حافظه کش مرورگر اسفاده می شه.

حالا می خوام بدونم که اگر قرار بشه یه محتویات درخوستهای ایجکس رو برای حالتهایی که در پست اول گفتم کش کنیم باید چه کدی استفاده کرد؟

ravand
یک شنبه 25 دی 1390, 10:50 صبح
براي كوكي ها كه معمولا از سيژن استفاده ميشه . اين دو موضوع بهم ربطي داره؟

idocsidocs
یک شنبه 25 دی 1390, 11:10 صبح
براي كوكي ها كه معمولا از سيژن استفاده ميشه . اين دو موضوع بهم ربطي داره؟

شما کوکی و کش رو به هم ربط دادید. ظاهرا در مورد کش به اندازه کافی مطالعه نداشتید.

ravand
یک شنبه 25 دی 1390, 15:40 عصر
من اين رو پيدا كردم ببين بدردت ميخوره؟

Session.cache_expire : مقدار پیش فرض آن 180 است.
کار : زمان حضور صفحات session را در cache بر حسب ثانیه مشخص می کند.
http://php.net/manual/en/function.session-cache-expire.php

idocsidocs
یک شنبه 25 دی 1390, 15:59 عصر
Sessionسسشن، کوکی و کش سه بحث کاملا جدا هستن.

idocsidocs
یک شنبه 25 دی 1390, 17:46 عصر
سایر دوستان در این مورد نظری ندارن؟


کش کردن اطلاعاتی که پی اچ پی برای جی کوئری می فرسته به چه صورت هست؟

لطفا حالتهای زیر رو توضیح بدید:
1- محتویات ارسال شده برای همیشه کش بشن
2- محتویات ارسال شده برای 1 ساعت کش بشن
3- محتویات ارسال شده اصلا در حافظه کش ذخیره نشن.

برای این موارد در توی پی اچ پی و توی جی کوئری باید چیکار کنم؟

MMSHFE
یک شنبه 25 دی 1390, 18:08 عصر
عزیز کلاً کش کردن اطلاعات ربطی به این نداره که بخواین ازش با AJAX استفاده کنید یا اینکه مستقیماً با URL درخواست بشن. مهم اینه که اگه اطلاعات قراره برای مدت خاصی تغییر نکنه، بهتره اونها رو کش کنید و دوباره از دیتابیس درخواست نکنید. هر زمان هم اطلاعات تغییر کرد، فایل کش رو پاک کنید. توی فایلی هم که با AJAX درخواست میکنید، چک کنید ببینید اگه فایل کش وجود داشت، همون رو ارسال کنه وگرنه از دیتابیس بخونه و فایل کش رو بسازه و بعد، محتویات فایل کش رو بفرسته.
موفق باشید.

aliphp1
یک شنبه 08 مرداد 1391, 19:18 عصر
من یه برنامه دارم که می خوام اصلا کش نشه چیکار کنم ؟
خیلی برام مهمه لطفا جواب بدید

ravand
یک شنبه 08 مرداد 1391, 19:21 عصر
اين كد رو اول همه ي كدهاي php خودت قرار بده:

header("Cache-Control: no-cache, must-revalidate");
روش ديگه :

Header('Cache-Control: no-cache');
Header('Pragma: no-cache');
<meta http-equiv="Expires" content="Tue, 01 Jan 2000 12:12:12 GMT">
<meta http-equiv="Pragma" content="no-cache">

eshpilen
یک شنبه 08 مرداد 1391, 21:39 عصر
کش کردن اطلاعاتی که پی اچ پی برای جی کوئری می فرسته به چه صورت هست؟

لطفا حالتهای زیر رو توضیح بدید:
1- محتویات ارسال شده برای همیشه کش بشن
2- محتویات ارسال شده برای 1 ساعت کش بشن
3- محتویات ارسال شده اصلا در حافظه کش ذخیره نشن.

برای این موارد در توی پی اچ پی و توی جی کوئری باید چیکار کنم؟
فکر نمیکنم فرقی بین درخواست ایجکس و غیرایجکس باشه در این زمینه.
کافیه هدرهای کش مناسب رو در پاسخ های سرور ارسال کنی.
مثل همونایی که خودت یک بار گذاشته بودی برای کش شدن فایلهای استاتیک و در htaccess بودن. منتها برای درخواستهای ایجکس باید اونا رو به شکل هدر درآورد و با تابع header در PHP ارسال کرد، چون سمت سرور درخواستهای ایجکس معمولا فایل استاتیک نیست و یک اسکریپت PHP هست که پاسخ میده.

aliphp1
یک شنبه 08 مرداد 1391, 22:50 عصر
اين كد رو اول همه ي كدهاي php خودت قرار بده:

header("Cache-Control: no-cache, must-revalidate");
روش ديگه :

Header('Cache-Control: no-cache');
Header('Pragma: no-cache');
<meta http-equiv="Expires" content="Tue, 01 Jan 2000 12:12:12 GMT">
<meta http-equiv="Pragma" content="no-cache">
من قبلا از این کد ها استفاده کردم
توی اینترنت اکسپلورر بد نیست ولی توی فایرفاکس و کروم جواب نداد و باز هم کش می شد

eshpilen
یک شنبه 08 مرداد 1391, 23:35 عصر
اینو تست کن:



header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
header("Cache-Control: private, no-store, no-cache, must-revalidate, post-check=0, pre-check=0, max-age=0");
header('Pragma: private');
header("Pragma: no-cache");

هرچی چیز ضدکش بوده ریختم توش!!