2014-05-04 78 views
-3

思路:浏览器因PHP而崩溃

我想做一个打印版式,我的解决方案是通过绝对div的。填充它,我使用PHP。 在每一页上都有一张桌子。在一页上有10行足够的空间。

所以我做了下面的代码,以防止在页面上超过10行,其余的被忽略(即时通过消息解决这个问题)。

这里是代码:

<table>  
<?php $i=1; 
while($info5=mysqli_fetch_array($data5)): ?>  
<?php while($i <'10'):?>  
<tr>  
<td width="50px"><?php echo $i; ?></td>  
<td> foo </td>  
<td> bar </td>  
</tr>  
<?php endwhile; ?>  
<?php $i++; endwhile; ?> 

不幸的是这个代码会导致火狐,Chrome和IE打破。该网站开始加载,然后冻结,最终发送“发送崩溃报告”。

为什么?

+0

的代码应该做的事情,而'$ i'小于10时,因为只有10行能够在页面上... – HKK

+1

为什么不解决您的查询只抢到10行? –

+0

然后我必须开火无尽的疑问?它可以创建装箱单,这些可以是1个位置到10 000个位置,我想在第一个页面上打印10行,并且在随后的所有页面上打印35行,除非$ i小于mysqli行数,插入全部35行.. – HKK

回答

4
$i++; 

应该是内在的,而里面,否则$i始终保持1,并产生一个死循环,这是什么原因导致你的页面崩溃。

像这样

<?php $i++;?> 
<?php endwhile; ?>  
<?php endwhile; ?> 
+0

yes ,但是在第一次之后,另一个将会跟随,在下一页中30行适合......然后呢? – HKK

+0

can $ i ++;多次使用? – HKK

+0

然后重新设置每个新外迭循环的开始'$ i',简单:) –