我有一个工作的PHP脚本需要一段时间才能加载,在加载期间我会通过echo
和flush()
输出一些内容。一切正常但现在我想使用Javascript / jQuery调用脚本,因为一些设计问题。
如果我在按下按钮时调用我的PHP脚本,它会直接加载所有内容,而无需等待脚本中的某些步骤完成。就像我的exec命令正在后台处理一样,好像我在我的执行结束时使用> /dev/null 2>/dev/null &
我不是。
我想把PHP脚本放在同一个index.PHP中并从那里调用它。
注意:PHP脚本在另一个文件中或者可以放在包含HTML的文件的底部是很重要的。
使用Javascript:
<script>
$(document).ready(function(){
$("#download-mp3").click(function(){
$("#div1").load("php/download.php", function(responseTxt, statusTxt, xhr){
if(statusTxt == "success")
alert("External content loaded successfully!");
if(statusTxt == "error")
alert("Error: " + xhr.status + ": " + xhr.statusText);
});
});
});
</script>
PHP:
echo '<li class="list-group-item list-group-item-info">Starting to gather data!</li>';
ob_flush();
flush();
$url = $unsplash;
$cmd = $unsplash . ' - ' . $amount;
exec($cmd);
echo '<li class="list-group-item list-group-item-success">Gathering Data Completed</li>';
ob_end_flush();
exec(command for downloading data);