Нещо се бъгна...

AmxBg

Registered
http://warez.no-ip.info/
Вижте новините... на всяка страница по 5 :)
А нещо не е както трябва.
Имаме общо 16 новини в 3 страници.
Трябва да е - Имаме общо 16 новини в 4 страници.
Проблема е страницирането!
 
Не искам да ставам нахален. :lol:

Код:
<?php
include ('confing.php');

$connection = mysql_connect(localhost, $user, $pass) or die("Сайтът не може да се свърже към базата данни1");
$db = mysql_select_db($db,$connection)or die("Сайтът не може да се свърже към базата данни2");
/* Отбележете по колко резултата да се показват на страница */
$pp = "5";

// изберета таблиза която искате да покажете
$table = "news";

$total = mysql_result(mysql_query("SELECT COUNT(id) FROM $table"),0);
$numofpages = $total / $pp;
if (!isset($_GET['page'])) {
$page = 1;
}
else {
$page = $_GET['page'];
}
$limitvalue = $page * $pp - ($pp);
$chars="SET CHARACTER SET cp1251";mysql_query($chars);
$sqlquery = "SELECT * from news order by id desc LIMIT $limitvalue, $pp";
$queryresult = mysql_query($sqlquery)
or die ("Заявката не може да се изпълни");
//показване на данните от базата данни
while ($row = mysql_fetch_array($queryresult))
{

if (strlen($row[zaglavie])>40) 
{$totchki='...';} 
else 
{$totchki='';} 
$kratko = substr($row[zaglavie],0,40);
echo "<b><font size=2 color=#CC9900> » $row[zaglavie]</font></b>
</td>
</tr>
<tr>
<td>
$row[body]
</td>
</tr>
<tr>
<td>
<u><A HREF='$row[avtor]'  TARGET='_blank'>$row[avtor]</A></u>
<br>
<left><HR WIDTH=100% SIZE=1></left>
";
}

function per_page($link, $offset) {
global $numofpages, $page;
$numofpages = round($numofpages);

$pagesstart = round($page-$offset);
$pagesend = round($page+$offset);

/* показване на стрелки « за предишна страница */
if ($page != "1" && round($numofpages) != "0") {
echo str_replace("%page", round($page-1), '<a href="'.$link.'"><font face="Trebuchet MS">«</font></a> ');
}

for($i = 1; $i <= $numofpages; $i++) {
if ($pagesstart <= $i && $pagesend >= $i) {
if ($i == $page) {
echo "<b>[$i]</b> ";
}
else {
echo str_replace("%page", "$i", '<a href="'.$link.'">'.$i.'</a> '); //номерация на страниците
}
}
}
if (round($numofpages) == "0") {
echo "[$i]";
}
/* показване на стрелки » за следваща страница */
if ($page != round($numofpages) && round($numofpages) != "0") {
echo str_replace("%page", round($page+1), '<a href="'.$link.'"><font face="Trebuchet MS">»</font></a>');
}
}

$our = mysql_query("SELECT count(id) as news_total FROM novini"); 
while($r=mysql_fetch_array($our)){ 

/* показване на общия брой страници и избор на страница */
echo '<center>';
echo 'Имаме общо <b>' .$r['news_total']. '</b> новини в <b>'.round($numofpages).'</b> страници. <br>';

per_page("?page=%page", "5"); 
} 

?>
 
NewGuy каза:
Ветоятно започва да брои от 0 новините като ги преброих са 15. :wink:
http://warez.no-ip.info/?page=4 :lol: Самоче това не го показва.
 
Виж дали в дб-то имаш някоя празна новина дето само си пробвал дали бачка ако има я изтрий.

$total = mysql_result(mysql_query("SELECT COUNT(id) FROM $table"),0);
Пробвай да го замениш с
$total = mysql_result(mysql_query("SELECT COUNT(id) FROM $table"),1);
 
Така не става, нямам празни новини, всичките сам ги добавял 1 по 1...
 

Back
Горе