PHP的警告:除零错误
问题描述:
我得到这个错误,不知道如何解决它。第162行是php代码中的第一行。我看了一些相关的问题和我所有的引号似乎是在正确的地方PHP的警告:除零错误
Per page:
<input type=text name=per_page value="<?php echo $en['per_page']; ?>" size=6>
Go to page:
<select name=page size=1>
<?php
$pages = ceil(sql_num_rows($result)/$en['per_page']);
for ($k=1;$k<=$pages;$k++)
echo '<option value='.$k.($en[page] == $k ? ' selected':'').'>'.
$k.'</option>';
echo '</select>';
if ($en[page]<$pages)
echo '<input type=submit name=next value="Next page">';
?>
答
尝试echo $en['per_page']
,并确保它得到正确的值。 (我敢打赌它没有)。
无关:$en[page]
大概应该是$en['page']
(假设页面实在不是一个常数)
答
什么的$en['per_page']
值(我猜零)
答
如果你得到一个鸿沟零错误,那么$en['per_page']
可能不正确。这可能是零值。
此外,所有的HTML属性需要加引号。 例如:
<input type=text name=per_page
应该是:
<input type="text" name="per_page"
你的数组索引也应该被引用。
$en[page]
应该是:
$en['page']
答
因为你不能有0
分母值检查的$值en [ 'per_page'> 0之前,将它应用于师。
答
你通过一个变量划分,如果变量是0,你会得到错误的任何时间。
,以防止它会检查,以确保$连接[“per_page”]的方式是不为零,因为这似乎是你唯一的分裂和可能是您的问题。
答
这里是解决方案:
每页:
<input type=text name=per_page value="<?php echo $en['per_page']; ?>" size=6>
转到页:
<?php
$pages = @ceil(sql_num_rows($result)/$en['per_page']);
for ($k=1;$k<=$pages;$k++)
echo '<option value='.$k.($en[page] == $k ? ' selected':'').'>'.
$k.'</option>';
echo '</select>';
if ($en[page]<$pages)
echo '<input type=submit name=next value="Next page">';
?>
小区/除法之前只是用@。
他们不*需要加引号*;)XHTML说,他们必须是,HTML说,他们可以是 - [HTML规范(http://en.wikipedia.org/wiki/HTML) – Rudu 2011-02-15 17:58:57
@Rudu :啊,没有意识到。我已经使用了XHTML这么久了,我习惯于引用所有属性。 – 2011-02-15 17:59:40