当代码(如大规模数据库查询)正在运行时,如何在PHP中显示“加载”文本?
答案 0 :(得分:3)
您可以使用AJAX调用。
答案 1 :(得分:0)
关闭输出缓冲并输出html然后启动你的大代码。
apache_setenv('no-gzip', 1);
ini_set('zlib.output_compression', 0);
//if you are buffering output currently. Output buffering can be nested.
for ($i = 0; $i < ob_get_level(); $i++) { ob_end_flush(); }
ob_implicit_flush(1);
Safari和IE有一个1k的缓冲区,你可能需要通过输出空格来填充它。例如。
答案 2 :(得分:0)
使用AJAX,您可以在Jquery库的帮助下完成。
<html>
<head>
<tittle>Page Tittle</tittle>
<script type="text/javascript" src="/js/jQuery.min.js"></script>
function loadingAjax(div_id) //javascript function
{
$("#"+div_id).html('<img src="ajax-loader.gif"> saving...');
// image displayed when the request started
$.ajax({
type: "POST",
url: "script.php", //php script that will return the database result
data: "name=John&id=28",
success: function(msg){
$("#"+div_id).html(msg); //result displayed after success
}
});
}
</head>
<body>
<a href="#" onclick="loadingAjax('myDiv');">save page</a>
<div id="myDiv"></div>
</body>
此处将显示图像“ajax loader.gif”,直到您的数据库结果准备就绪。
希望它有所帮助。