V
vital
Про LIMIT и т.п. рассказывать не буду, сами в курсе. Когда делаете постраничный вывод, очень помогает след ф-я.
Выводит красивую строчку со ссылками на страницы.
* $records - всего записей
* $r_start - текущая страница
* $URL - адрес, заканчивающийся на "="
* $inpage - записей на страницу
Сперто -
Отредактировано немного мной.
PHP:
function LeftRight($records,$r_start,$URL,$inpage=20)
{
$str="";
if($records<=$inpage) return;
if($r_start!=0)
{
$str.="<a href=".$URL."0>«</a>";
$str.="<a href=$URL".($r_start-1).">‹</a>";
}else $str.="«‹";
#Считаем количество страниц
if($records%$inpage==0) $add=0; else $add=1;
$page_count=(intval($records/$inpage)+$add);
#Ссылки на первые 10 страниц, начиная с первой
if($r_start<5)
{
$sstart=0;
$send=10;
}
#Ссылки на 10 страниц, влево и вправо по 5, относительно текущей
if($r_start>=5 and $r_start<=($page_count-5))
{
$sstart=$r_start-5;
$send=$r_start+5;
}
#Ссылки на последние 10 страниц
if($r_start>($page_count-5))
{
$sstart=$page_count-10;
$send=$page_count;
}
if($sstart<0) $sstart=0;
if($send*$inpage>$records) $send=$page_count;
$str.= ' | ';
#Выводим список ссылок
for($i=$sstart;$i<$send;$i++)
{
if($i==$r_start) $str.="<b>".($i+1)."</b>";
else $str.="<a href=$URL".($i)."><u><b>".($i+1)."</b></u></a>";
}
if($r_start+1<$page_count)
{
$str.="<a href=$URL".($r_start+1).">›</a>";
$str.="<a href=$URL".($page_count-1).">»</a>";
} else $str.="›»";
return($str);
}
* $records - всего записей
* $r_start - текущая страница
* $URL - адрес, заканчивающийся на "="
* $inpage - записей на страницу
Сперто -
Ссылка скрыта от гостей
Отредактировано немного мной.