我正在使用JQuery来调用php脚本。
$(document).ready(function(){
$("button").click(function(){
$("#div1").html("<img border='0' src='/images/ajax_loader_blue_32.gif'>");
$.ajax({url:"process_casper.php",success:function(result){
$("#div1").html(result);
}});
});
});
这段代码有效,只有当我在我的 php scrip 顶部回显"test"; 当然,输出是"测试"。 但是,如果我尝试让 php scrip 运行(大约需要 20 秒),那么什么都不会返回。
PHP脚本:
require_once("libs/simple_html_dom.php");
$filename = "data/okbnetplaza_" . date('Y-m-d_H:i:s') . ".txt";
exec("casperjs /root/okbnetplaza.js --uid=removed --pin=removed > $filename");
// Create a DOM object
$html = new simple_html_dom();
// Load HTML from a URL
$html->load_file($filename);
foreach($html->find('td[class=txtRight]') as $td)
{
foreach($td->find('.txtBold') as $val)
{
echo $val->plaintext;
}
}
当我在命令行中运行 scrip 时,它只返回我需要的一行文本。
我做错了什么,导致什么都不归还?
事实证明,问题与权限有关。 exec 命令正在创建文件,但它没有创建该文件的权限。 一旦我更改了创建文件的权限,脚本就可以工作了。
感谢您的帮助!