Показать сообщение отдельно

  #3  
Старый 19.04.2007, 15:47
Isis
Флудер
Регистрация: 20.11.2006
Сообщений: 3,316
Провел на форуме:
16641028

Репутация: 2371


По умолчанию

PHP код:
// Переменная хранит число пользователей выводимых на станице
$num 20;
// Извлекаем из URL текущую страницу
$page $_GET['page'];
// Определяем общее число пользователей в базе данных
$result mysql_query("SELECT COUNT(*) as cnt FROM `users`");
$users mysql_result($result0"cnt");
// Находим общее число страниц
$total intval(($users 1) / $num) + 1;
// Определяем начало сообщений для текущей страницы
$page intval($page);
// Если значение $page меньше единицы или отрицательно
// переходим на первую страницу
// А если слишком большое, то переходим на последнюю
if(empty($page) || $page 0$page 1;
  if(
$page $total$page $total;
// Вычисляем начиная к какого номера
// следует выводить сообщения
$start $page $num $num;
$result mysql_query("SELECT * FROM `users` ORDER by `id` ASC LIMIT $start$num");
for (
$i 0$i mysql_num_rows($result); $i++) {
       
//Здесь пишешь то, что должно выводиться на странице N раз
}
//Вводим ссылки на др.страницы
$file 'users.php'
       if (
$page != 1)
       
$pervpage "<a href= ./$file?page=1><<   </a>";
       
// <a href= ./$file?page=". ($page - 1) ."><</a> ";
// Проверяем нужны ли стрелки вперед
if ($page != $total$nextpage #"<a href= ./$file?page=". ($page + 1) .">></a>
                                   
"<a href= ./$file?page=" .$total">   >></a>";

// Находим две ближайшие станицы с обоих краев, если они есть
if($page 0)
$page2left " <a href= ./$file?page=". ($page 2) .">". ($page 2) ."</a> | ";
if(
$page 0)
$page1left "<a href= ./$file?page=". ($page 1) .">". ($page 1) ."</a> | ";
if(
$page <= $total)
$page2right " | <a href= ./$file?page=". ($page 2) .">". ($page 2) ."</a>";
if(
$page <= $total)
$page1right " | <a href= ./$file?page=". ($page 1) .">". ($page 1) ."</a>";

// Вывод меню
echo $page2left.$page1left."<b>".$page."</b>".$page1right.$page2right;
      }