[英]PHP Warning: Division by zero error
I getting this error and not sure how to fix it. 我收到此错误,不确定如何解决。 Line 162 is the first line in the php code.
第162行是php代码中的第一行。 I looked at some of the related questions and all my quote marks seem to be in the right place
我看了一些相关的问题,所有引号似乎都在正确的位置
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">';
?>
$en['per_page']
的值是$en['per_page']
(我猜是零)
Try to echo $en['per_page']
and make sure it's got the correct value. 尝试
echo $en['per_page']
并确保它具有正确的值。 (I bet it doesnt). (我敢打赌不会)。
Unrelated: $en[page]
Should probably be $en['page']
(assuming page is really not a constant) 无关:
$en[page]
可能应该是$en['page']
(假设页面实际上不是常数)
Because you cannot have a denominator value of 0. 因为分母值不能为0。
Check the value of $en['per_page'] > 0 prior to applying it to a division. 在将其应用于除法之前,请检查$ en ['per_page']> 0的值。
Any time you divide by a variable, if the variable is 0 you will get that error. 任何时候除以变量,如果变量为0,就会得到该错误。
The way to prevent it would be to check to ensure that $en['per_page'] is not zero, since that appears to be your only division and is probably where your problem is. 防止这种情况的方法是检查以确保$ en ['per_page']不为零,因为这似乎是您的唯一除法,并且很可能是问题所在。
If you're getting a divide by zero error, then $en['per_page']
may not be correct. 如果您得到除以零的错误,则
$en['per_page']
可能不正确。 It's probably a zero value. 可能是零值。
Also, all your HTML attributes need to be in quotes.
另外,所有HTML属性都必须用引号引起来。
For example:
例如:
<input type=text name=per_page
Should be:
应该:
$en[page]
Your array indexes should be quoted too. 您的数组索引也应加引号。
$en['page']
Should be: 应该:
$en['page']
Here is the solution: 解决方法如下:
Per page: 每页:
<input type=text name=per_page value="<?php echo $en['per_page']; ?>" size=6>
Go to page: 转到页面:
<?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">';
?>
Just used @ before ceil / division. 刚刚在ceil /除法之前使用@。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.