странен проблем

Pro_Lamer4e

Registered
Warning: Division by zero in /opt/public_html/test/viewtopic.php on line 707
като на 707 ред е $maxPage = ceil($numrows/$br);
a това ми е най отгоре в сраницата
Код:
$br = 8;
$pageNum = 1;
if(isset($_GET['page'])) {
$pageNum = $_GET['page'];
}
$redove = ($pageNum - 1) * $br;
$idd = addslashes(htmlspecialchars($_GET['id']));
$ourrr = mysql_query("SELECT * FROM forum_replies WHERE topicid = '$idd'ORDER by id DESC LIMIT $redove, $br"); 
while($rawww=mysql_fetch_array($ourrr)){
if($admins) { $admmm = '<a href=modcp.php?act=dellpost&id='.$rawww['id'].'><img src=/images/icons/delete_item.png border=0></a>'; }

<?php 
$query = "SELECT COUNT(id) AS numrows FROM forum_replies  WHERE topicid = '$idd' ";
$result = mysql_query($query) or die('Не си избрал страница!');
$row = mysql_fetch_array($result, MYSQL_ASSOC);
$numrows = $row['numrows'];
$maxPage = ceil($numrows/$br);
$self = $_SERVER['PHP_SELF'];
$ns = '';
for($page = 1; $page <= $maxPage; $page++) {
if ($page == $pageNum) {
$ns .= "<a  class=\"number current\" href=\"$self?id=$idd&page=$page\" >  $page </a>  "; 
}
else {
$ns .= "<a  class=\"number \" href=\"$self?id=$idd&page=$page\"  >$page</a> ";
}}
if ($pageNum > 1) {
$page = $pageNum - 1;
$pr = " <a href=\"$self?id=$id&page=$page\"   id=\"page\"> <<< </a>  ";
$one = " <a href=\"$self?id=$idd&page=1\" >« първа</a>  ";
}
else {
$pr = ' ';
$one = ' ';
}
if ($pageNum < $maxPage) {
$page = $pageNum + 1;
$sl = " <a href=\"$self?id=$id&page=$page\"  id=\"page\"> >>> </a>   "; 
$pl = (" <a href=\"$self?id=$idd&page=$maxPage\"  >последна »</a> ");
}
else {
$sl = '';
$pl = '';
}
echo  $one . $ns  . $pl;
echo '';?>
 

bobsonabg

Registered
Предполагам, че проблемът идва от $numrows и от там се получава грешката.
Можеш ли да ми кажеш какво извежда $numrows като пример?
Вероятно функцията не може да обработи числото, което получава.
Също така кажи с каква цел използваш функцията, защото тя е предназначена за закръгляне на числа и може да не си уцелил предназначението й.
Виждам, че я ползваш за делене, но може да не е най-правилния избор като функция за тази цел.
Ако съм те разбрал правилно, опитай с функцията fmod
http://www.php.net/manual/bg/function.fmod.php
 

rainbowdio

Registered
Този Warning те предупреждава че делиш на 0 а ти предполагам знаеш че на 0 не се дели :)

$maxPage = ceil($numrows/$br);

или с други думи $br = 0; провери си кода
 

bobsonabg

Registered
rainbowdio каза:
Този Warning те предупреждава че делиш на 0 а ти предполагам знаеш че на 0 не се дели :)

$maxPage = ceil($numrows/$br);

или с други думи $br = 0; провери си кода
Да, но в случая $br е предварително зададена стойност[8], именно затова мисля, че проблема му идва от стойността на $numrows
 

Горе