2017-07-06 76 views
-1

我使用此命令从交友如何重新加载CRON工作?

wget http://example.com.com/test.php 

我有PHP文件中这段JavaScript代码,它重新加载页面做cron作业(上重装发送GET值)。

echo'<script> location.replace("?number='.$requestsDone.'"); </script>'; 

现在你可以说,只要每分钟做一次CRON工作。但是,我想,就我而言,它不会做我想要的。

正如你所看到的,我发送一个GET值,当我重新加载页面。而那GET值是我的代码的重要组成部分。所以,我试图用该命令(上面给出)运行该页面,但它不会重新加载页面(即JavaScript代码不起作用)。

那么,有什么解决方案?

让我知道,如果你不明白。

+1

你做了'wget';在这种情况下,“重新加载页面”甚至意味着什么?你发布的任何内容都表明JavaScript代码甚至可以运行。 – Pointy

+0

wget不执行JavaScript。 – James

+0

哦,我应该用什么命令来执行Javascript? –

回答

1

JavaScript只能在浏览器中运行。你可以使用phantomJs并使用它像cron,如果你想运行的JavaScript,但它会有点复杂。

所以你可以用卷曲的PHP实现你这样刷新页面的目的:

function curl_download($Url){ 

    // is cURL installed yet? 
    if (!function_exists('curl_init')){ 
     die('Sorry cURL is not installed!'); 
    } 

    // OK cool - then let's create a new cURL resource handle 
    $ch = curl_init(); 

    // Now set some options (most are optional) 

    // Set URL to download 
    curl_setopt($ch, CURLOPT_URL, $Url); 

    // Set a referer 
    curl_setopt($ch, CURLOPT_REFERER, "http://www.example.org/yay.htm"); 

    // User agent 
    curl_setopt($ch, CURLOPT_USERAGENT, "MozillaXYZ/1.0"); 

    // Include header in result? (0 = yes, 1 = no) 
    curl_setopt($ch, CURLOPT_HEADER, 0); 

    // Should cURL return or print out the data? (true = return, false = print) 
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 

    // Timeout in seconds 
    curl_setopt($ch, CURLOPT_TIMEOUT, 10); 

    // Download the given URL, and return output 
    $output = curl_exec($ch); 

    // Close the cURL resource, and free system resources 
    curl_close($ch); 

    return $output; 
} 


$output = curl_download("http://www.example.com/yourscript.php?number='$requestsDone'"); 
+0

我只是复制/粘贴整个代码?或者我需要编辑它?它在浏览器中什么都不做,它会在cron工作中工作? –

+0

是复制粘贴整个功能。然后当你想用url和查询参数刷新页面时调用它。即:放置'curl_download($ url)'而不是'echo脚本'。 –

+0

,它和运行另一个cron作业一样,所以你的php脚本会再次运行你在url函数参数中包含的查询参数。 –