Автор Тема: Разбиение на страницы  (Прочитано 3967 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Sigma

  • Завсегдатай
  • Новичок
  • *
  • Сообщений: 35
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Разбиение на страницы
« : 21 Января 2004, 15:30:41 »
Вот предположим сделан запрос к базе данных, навыдавал он мне так результатов, всё ок. Как сделать так, чтобы запрос выдавал скажем по 5 штук на странице, а внизу страницы был бы переключатель страниц. Может у кого есть примерчик, как это реализовано, чтобы разобраться ?

Оффлайн Yukko

  • Координатор
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 1586
  • +0/-0
  • 0
    • Просмотр профиля
    • http://estrabota.com.ua
работа в Украине

Оффлайн Mаster

  • Завсегдатай
  • Пользователь
  • **
  • Сообщений: 71
  • +0/-0
  • 0
    • Просмотр профиля
    • http://code.msk.ru/
Разбиение на страницы
« Ответ #2 : 21 Января 2004, 15:39:00 »
Ну вот пример с линками...

   $query mysql_query("SELECT * FROM ".$table_pf."_groop_links WHERE groop = \'".$this_links_groop."\' ORDER BY id_order DESC");
	
while (
$var_groop_links mysql_fetch_array($query)) {
	
	
echo 
"<B>".$var_groop_links[\'title\']."</B><BR><BR>";
	
	
if (!isset($links_page)) {$links_page = 1;}
	
	
$to_page = 15;
	
	
$lp = ($links_page * $to_page) - $to_page + 1;
	
	
$query2 = mysql_query("SELECT * FROM ".$table_pf."_links WHERE groop = \'".$this_links_groop."\' ORDER BY id_order DESC");

	
	
if (mysql_num_rows($query2) > $to_page) {
	
	
	
echo "<CENTER>Страницы: ";
	
	
	
for ($i = 1; $i <= ceil(mysql_num_rows($query2) / $to_page); $i++) {
	
	
	
	
if ($i == $links_page) {
	
	
	
	
	
echo " [ <B>".$i."</B> ] ";
	
	
	
	
} else {
	
	
	
	
	
echo " [ <A href=\\"?this_links_groop=".$this_links_groop."&links_page=".$i."\\">".$i."</A> ] ";
	
	
	
	
}
	
	
	
}
	
	
	
echo "</CENTER>";
	
	
}


	
	
$key = 0;
	
	
echo "<TABLE border=0 cellspacing=1 cellpadding=3 width=100%>";
	
	
while ($var_links = mysql_fetch_array($query2)) {
	
	
	
if (($key+1) >= $lp && ($key+1) < $lp + $to_page) {
	
	
	
	
echo ("
	
	
	
	
      <TR valign=\\"top\\">
	
	
	
      
	
 <TD width=88px>".$var_links[\'code\']."</TD>
	
	
	
	
       <TD width=100%>".$var_links[\'description\']."</TD>
	
	
	
	
      </TR>
	
	
	
	
");
	
	
	
}
	
	
	
$key++;
	
	
}

	
	
echo "</TABLE>";

	
	
if (mysql_num_rows($query2) > $to_page) {
	
	
	
echo "<CENTER>Страницы: ";
	
	
	
for ($i = 1; $i <= ceil(mysql_num_rows($query2) / $to_page); $i++) {
	
	
	
	
if ($i == $links_page) {
	
	
	
	
	
echo " [ <B>".$i."</B> ] ";
	
	
	
	
} else {
	
	
	
	
	
echo " [ <A href=\\"?this_links_groop=".$this_links_groop."&links_page=".$i."\\">".$i."</A> ] ";
	
	
	
	
}
	
	
	
}
	
	
	
echo "</CENTER>";
	
	
}

	
}
Дурак учится на своих ошибках, умный на чужих.
умные учатся у дураков

Оффлайн Yukko

  • Координатор
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 1586
  • +0/-0
  • 0
    • Просмотр профиля
    • http://estrabota.com.ua
Разбиение на страницы
« Ответ #3 : 21 Января 2004, 15:46:55 »
Mаster
Эту тему уже так обсосали, что дальше некуда, Sigma же не возьмет ни одной строчки из твоего кода... радоваться тому, что у тебя есть своя реализация постраничного вывода надо тихо и в оффлайне.
работа в Украине

Оффлайн Mаster

  • Завсегдатай
  • Пользователь
  • **
  • Сообщений: 71
  • +0/-0
  • 0
    • Просмотр профиля
    • http://code.msk.ru/
Разбиение на страницы
« Ответ #4 : 21 Января 2004, 16:01:19 »
Yukko а что в ней не так?
разьве что только запрос вытаскивает все линки из таблицы, а потом циклом отбирает нужные...
да не совсем спортивно для тяжелых задач, но его же интересовал принцип.
Дурак учится на своих ошибках, умный на чужих.
умные учатся у дураков

Оффлайн Yukko

  • Координатор
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 1586
  • +0/-0
  • 0
    • Просмотр профиля
    • http://estrabota.com.ua
Разбиение на страницы
« Ответ #5 : 21 Января 2004, 16:05:12 »
Цитировать
Mаster:
но его же интересовал принцип.

ее!



насчет всего остального я уже, ИМХО, объяснил
работа в Украине

Оффлайн Sigma

  • Завсегдатай
  • Новичок
  • *
  • Сообщений: 35
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Разбиение на страницы
« Ответ #6 : 21 Января 2004, 17:01:19 »
ок, читаем ...

Оффлайн Меняздесьдавнонет

  • новичЕк
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 5698
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
Разбиение на страницы
« Ответ #7 : 21 Января 2004, 20:51:37 »
Sigma , хы, какая козырная тема :-)

Mаster , КАКОЙ КОШМАР! Ты бы постыдился это убожество в сеть-то выкладывать. Ты не мастер, родной. Ты дикарь с острова папуасов.

Sigma, дело, конечно, твое. Если тебе легче учиться по коду в 50 строчек, чем в 5, и ты считаешь что учиться надо у такого же чайника, как ты сам, который ничего не смыслит - то флаг тебе в руки.

Если же ты хочешь нормальный пример, то возьми в руки поиск и посмотри на этом форуме.
твоя задача называется "постраничный вывод".

Есть еще вариант. Не смотреть готовое, а попробовать сделать самому.
Это та задача, которая легко решается самостоятельно - следует только чуть-чуть подумать.
задача сводится к двум частям - запросить у базы нужные записи - тут сам не сообразишь, это надо знать - это делает оператор LIMIT с_какой, сколько

А вот ссылки вывести - это один цикл.

Оффлайн Mаster

  • Завсегдатай
  • Пользователь
  • **
  • Сообщений: 71
  • +0/-0
  • 0
    • Просмотр профиля
    • http://code.msk.ru/
Разбиение на страницы
« Ответ #8 : 22 Января 2004, 11:19:30 »
Цитировать
Ты бы постыдился это убожество в сеть-то выкладывать

я сгласен... код старый и не доработаный, но принцип то в нем есть... хотя ты прав.
Дурак учится на своих ошибках, умный на чужих.
умные учатся у дураков

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28