PHP是一种服务器端语言,这意味着当您打开您的网页时,PHP在执行其他任何操作之前执行。你可以做的是集成一些jQuery来加载行,或者甚至可以在页面上使用嵌入式iframe来让脚本在行之前加载。
jQuery的:(未经测试)
<html>
<head>
<title>Your page!</title>
<script src="//ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script type="text/javascript">
function loadstuff() {
// Borrowed from: http://www.w3schools.com/jquery/jquery_ajax_get_post.asp
$.get("get_rows.php",function(name,data){
$("#table123 tr").append("<td>"+name+" ... "+data+"</td>");
});
}
window.onload = loadstuff;
</script>
</head>
<body>
<h1>Load some stuff</h1>
<table id="table123">
<tr>
</tr>
</table>
</body>
</html>
的iFrame:
<html>
<head>
<title>Your page!</title>
</head>
<body>
<h1>Your Page!</h1>
<iframe src="www.example.com/slow_loading_rows"></iframe>
</body>
</html>
我不得不问的原因是你为什么回声5000行......我认为这是数据库信息,但为什么?另外,你有没有考虑过滤结果,分页等? – 2014-12-04 19:21:11
冻结是浏览器无法完成加载页面。 @TimLewis说,你无法用PHP控制它 - 最好只输出一定数量的字段并利用分页/过滤。 – 2014-12-04 19:24:18
也许你可以尝试使用AJAX调用来获取HTML而不是回声。你打算为结果分页,对吧?这样可以请求更小的块。我的意思是,有5000行...如果是这样,那将是一个很好的方法! – Todd 2014-12-04 19:26:11