Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Разбить новости на страницы..

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Описание: помогите сделать..
Extazy
Отправлено: 12 Января, 2010 - 05:51:05
Post Id


Посетитель


Покинул форум
Сообщений всего: 490
Дата рег-ции: Янв. 2010  


Помог: 0 раз(а)




Здравствуйте.
Подскажите, как при выводе новостей сделать разбиение по 10 штук на каждой странице.
То есть новости берутся из базы.. выводятся на главной.. как сделать, чтоб при достижении 11 новостей создавалась ссылка на вторую страницу и новости продолжали выводится туды?

Буду очень благодарен за помошь!
 
 Top
Ch_chov
Отправлено: 12 Января, 2010 - 06:10:23
Post Id



Постоянный участник


Покинул форум
Сообщений всего: 2121
Дата рег-ции: Июль 2008  
Откуда: из города


Помог: 90 раз(а)




Поищи на форуме. Эта тема обсуждалась не раз.
Или в гугле: http://www[dot]google[dot]ru/search?q=php+paginator
 
 Top
SandZ
Отправлено: 12 Января, 2010 - 14:11:02
Post Id


Новичок


Покинул форум
Сообщений всего: 3
Дата рег-ции: Янв. 2010  


Помог: 0 раз(а)




Писал быстро, на работе)) не ругатся.
использую в своих проэктах немного лучше код, но идея такая же) Радость

PHP:
скопировать код в буфер обмена
  1. <?PHP
  2.                 $m1=mysql_fetch_assoc(mysql_query('select count(id) as c from news'));
  3.  
  4.                 $limit=20; //Лимит новостей на странице
  5.                 $p=@round($m1['id']/$limit); //получаем количевство страниц всего округленое в меньшую сторону
  6.                
  7.          if($_GET['p']){
  8.                         $page=@intval($_GET['p']); // выбираем только числовое значение из GET запроса
  9.                         $curlimit=$page*$limit; //для запроса
  10.                        
  11.                         if($page<1||$page>$p)
  12.                                 die;
  13.      }
  14.      else{
  15.             $page=1;
  16.             $curlimit=0;
  17.      }
  18.      
  19.      //теперь мы делаем выборку из базы вида такого
  20.      $s2=mysql_query('select * from news limit '.$curlimit.','.$limit); // с уже прописаными ограничениями на вывод
  21.      
  22.      /// делаем вывод новостей, не буду расписывать
  23.      
  24.      
  25.      
  26.      /// Выводим страници циклом
  27.      for($i=0;$i>$p;$i++)
  28.      {
  29.      
  30.         if($i==$page){
  31.         echo '<b>'.$i.'</b>'; // текущая старница      
  32.         }else{
  33.         echo '<a href="?p='.$i.'">'.$i.'</a>'; //старници доступные для перехода       
  34.         }
  35.        
  36.      }
  37.  
  38.  
  39. ?>
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Напишите за меня, пожалуйста »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB