PDA

View Full Version : سوال: درخواست راهنمایی برای کش کردن خروجی جاوااسکریپت



ehsan640
شنبه 02 اردیبهشت 1391, 20:18 عصر
سلام به همه اساتید و دوستان

من برای سایتم میخوام از یه تبلیغات یه سیستم کلیکی استفاده کنم
این سیستم یه اسکریپت به شکل زیر میده که باید توی صفحات بذاریم :


<center><script type='text/javascript' src='http://bermoda.ir/showb.php?text=0&uid=XXXX&c=2&mod=h&type=h&star=1&cat=0'></script></center>

این کد با هر بار لود صفحه دو تا بنر رو لود میکنه و توی سایت نمایش میده
اینکار دو تا ایراد داره : یکی اینکه توی هر بار لود صفحه چند ثانیه زمان لازمه تا این اسکریپت از این سایت تبلیغاتی فراخوانی بشه و اجرا بشه و خروجیش توی صفحات ما نشون داده بشه. ضمن اینکه در هر بار لود صفحه عکسهای جدیدی نشون داده میشه که کمی برای بازدید کننده ناخوشایند هست

من تصمیم گرفتم که کاری کنم که این خروجی cache بشه و مثلا هر ساعت فقط یک بار از سایت تبلیغاتی فراخوانی بشه و تا یک ساعت بعد همون نتایج قبلی نشون داده بشه

امیدوارم منظورمو رسونده باشم

من از کد زیر برای کش کردن صفحات php استفاده میکردم همیشه
این کد رو توی فایلی به اسم cacheads.php گذاشتم:



<?php

$cachefile = "cache/ad.html";


$cachetime = 60 * 60; // 60 minutes


// Serve from the cache if it is younger than $cachetime

if (file_exists($cachefile) && (time() - $cachetime
< filemtime($cachefile)))
{

include($cachefile);


exit;

}

ob_start(); // start the output buffer


?>



<center><script type='text/javascript' src='http://bermoda.ir/showb.php?text=0&uid=XXXX&c=2&mod=h&type=h&star=1&cat=0'></script></center>



<?php
// open the cache file for writing
$fp = fopen($cachefile, 'w');


// save the contents of output buffer to the file
fwrite($fp, ob_get_contents());

// close the file

fclose($fp);

// Send the output to the browser
ob_end_flush();
?>



فکر میکردم که با این کار و استفاده از کد زیر توی صفحاتم بتونم به هدفم برسم (که هر یک ساعت 2 تا تبلیغ نشون داده بشه توی سایت)

require_once('./cacheads.php');



ولی با اینکار

اولا که دیگه صفحات سایتم لود نمیشه و فقط دو تا بنر نمایش داده میشه
ثانیا همون دو تا بنر هم با هر بار لود صفحات تغییر میکنن (عملا یعنی حتی این بخشش هم اوکی نشده)
هیچ فایلی هم ایجاد نمیشه روی هاست > cache/ad.html


میخواستم از دوستان راهنمایی بخوام در این مورد
ممنون