我收到此错误:
像这样的PHP代码:警告:在C:\ Program中除以零 Files \ EasyPHP-DevServer-14.1VC11 \ data \ localweb \ my portable 485行的文件\ B2 \ seat.php
警告:在C:\ Program中除以零 Files \ EasyPHP-DevServer-14.1VC11 \ data \ localweb \ my portable 第496行的文件\ B2 \ seat.php
for ($i = 0; $i < $num_rows; $i++) {
$row = mysql_fetch_array($result);
if ($i % $columns == 0) { // line 485
}
if ($row['status']=='0') {
echo "<td><input type='checkbox' name='service[]' id='services' value='$row[rowid]' /> ".$row['rowid']."</td>";
} else {
echo "<td>".$row['rowid'].".Sudah di pesan</td>";
}
if (($i % $columns) == ($columns - 1) || ($i + 1) == $num_rows) { //line 496
echo "\n</TR>";
}
}
请帮我解决这个问题?
答案 0 :(得分:0)
根据@Brian-Ray所说的,你的列是0.模数运算符(%)执行除法运算(确定&#34;余数&#34;值)。如果遇到除以0,则会发生此错误。
常见的解决方法是检查0,并将IF语句中的逻辑短路。这看起来像是:
if( ($columns != 0) and ($i % $columns == 0) )
由于使用AND(&amp;&amp;)逻辑运算符,当if语句遇到第一组括号(列不等于零)并失败时,它不会再尝试执行if语句(因为使用AND运算符,结果不可能成立。
要修复第496行的错误,您需要执行相同操作。您可以在此处找到有关if语句短路的更多信息:
答案 1 :(得分:0)
总结问题:
$i % columns
。 这意味着columns
此时为零,您将除以它。
要解决此问题,您需要决定:
columns
设置为零?
columns
设置为零时,程序应该做什么?