Постраничная навигация?

Печать RSS
59

Автор
★☆Pro100Поэт☆★
0
<?php
$msg = 10; //сообщении нa cтpaницe

$file = @file("chat.dat");
$file = @array_reverse($file);
if(isset($_GET[page]) && eregi("^[1-9]\$",$_GET[page]))
{$page=$_GET[page];}
else {$page=1;}
$sp = $msg*$page;
$minus = $sp-$msg;
$count = count($file);

echo '<div class="add"><a href="index.php?act=1">Сказать</a> / <a href="'.$url.'?rand='.$rand.'">Обновить</a><br></div>';

for($i=$minus; $i<$sp && $i<$count; $i++){
$a = explode("|",$file[$i]);

echo '<div class="login">'.$a[0].'</div><div class="mess">Говорит: '.$a[1].'</div><div class="time">Добавленно: '.$a[2].'</div>';

if($page>1) print '&#171;<a href="index.php?page='.($page-1).'">Haзaд</a><br/>';
if(count($file)>$sp) print'<a href="index.php?page='.($page+1).'">Впepeд</a>&#187;<br/>'; }
?>
Вот так вот у меня навигация...вот,может на МуSQL есть типо такого,не громоздкая?
K

Транклюкаторщик
0
11,[offtop]
<?

# а не проще место этого:
eregi("^[1-9]\$",$_GET[page];
# делать так:
$page=intval($_GET[page]);
# ну или так:
isset($_GET[page]) && is_numeric($_GET[page]);
/* 
во первых регуляркой проверять цифру - это как то пошло,
а во вторых, если будет 10,11,12 итп страница то эта регулярка вернет false
*/
?>
[/offtop]
Изменил: KOZZ (01.08.2010 / 12:08)

крутой чЕл
0
eGo (1 Августа 2010 / 12:04)
11,[offtop]
<?

# а не проще место этого:
eregi("^[1-9]\$",$_GET[page];
# делать так:
$page=intval($_GET[page]);
# ну или так:
isset($_GET[page]) && is_numeric($_GET[page]);
/* 
во первых регуляркой проверять цифру - это как то пошло,
а во вторых, если будет 10,11,12 итп страница то эта регулярка вернет false
*/
?>
[/offtop]
и в третьих ereg будет вырезана из пыха (или уже) и надо юзать preg
K

Транклюкаторщик
0
11,если нужно именно регуляркой, то делай так:
if(preg_match("/^\d+$/",$_GET[page]))
Изменил: KOZZ (01.08.2010 / 12:23)
Автор
★☆Pro100Поэт☆★
0
А подробней можно? А то я что-то не очень догнал %-)

2000 лет д.н.э.
0
просто не в кассу эта регулярка.
вот тебе конструкция нормальная
<?php
$page = isset($_GET['page']) ? abs(intval($_GET['page'])) : 0;
?>
Автор
★☆Pro100Поэт☆★
0
16.плюс поставил! Буду пробовать...
Стикеры / Теги / Правила / Топ тем / Топ постов / Поиск