我使用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脚本的顶部。当然输出是“测试”。但是,如果我尝试让PHP脚本运行(大约需要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时,它只返回我需要的一行文本。
我做错了什么导致什么都没有归还?
答案 0 :(得分:0)
事实证明,问题与权限有关。 exec命令正在创建一个文件,但它没有创建该文件的权限。一旦我更改了要创建文件的位置的权限,那么脚本就可以了。
感谢您的帮助!