Автор Тема: Как правильно разбить постранично?  (Прочитано 4130 раз)

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

Оффлайн gregor

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 8
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Читаю картинки из $dir и вывожу их в две колонки. Если картинок слишком много, то страница становится огромной. Как разбить страницу по $fotos_per_page=20? Ногами сильно не пинайте, я только учусь...


        $dd 
0;
if (
$dir = @opendir("small")) {
  while (
false !== ($file readdir($dir))) {
      
$smallfile substr_replace($file, \'\', -5, -4);
      if($file != "." && $file != "..")
      {
      $dd += 1;
      $sd = $dd % 2;
      echo " &nbsp<a href=\\"big/$smallfile\\" target=\\"_blank\\"><img src=\\"small/$file\\" border=0></a>  ";
      }
      if ($sd == 0){echo "
\\n";
                }
    }
          closedir($dir);
    }


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

  • новичЕк
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 5698
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
Как правильно разбить постранично?
« Ответ #1 : 21 Июня 2004, 19:59:56 »
вот в этом цикле
Цитировать
while (false !== ($file = readdir($dir))) {

картинки не выводить, а только занести в массив.
а уж вынести из массива постранично - пара пустяков!

Оффлайн gregor

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 8
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Как правильно разбить постранично?
« Ответ #2 : 21 Июня 2004, 20:23:40 »
RomikChef

$array_file 
= array($file);

Занёс $file в массив.

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

  • новичЕк
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 5698
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
Как правильно разбить постранично?
« Ответ #3 : 21 Июня 2004, 20:38:10 »
массивы выводят в цикле.
циклу можно задать начальное и конечное значение

Оффлайн gregor

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 8
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Как правильно разбить постранично?
« Ответ #4 : 23 Июня 2004, 14:39:53 »
Что-то я не понимаю, не могу скрестить вывод картинок и постраничное разбиение :(


if ($dir = @opendir("small")) {
  while (
false !== ($file readdir($dir))) {
      if(
$file != "." && $file != "..")
      {
$array_files = array($file);
      }
                  }
    }
          
closedir($dir);
    }

$numpages ceil($total_fotos $fotos_per_page);
for (
$i$i<$numpages$i++){
if (
$page_number!=$from) echo "<a href=\'".$PHP_SELF."?from=".$page_number."\'> ".($i+1)." </a>";
      else echo 
$i+1;
}

Оффлайн hanslinger

  • H2Oer
  • Ветеран
  • *****
  • Сообщений: 1148
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.orava.ru
Как правильно разбить постранично?
« Ответ #5 : 24 Июня 2004, 08:27:45 »
1) Это: "$from" замени на $_GET[\'from\'];
2) У тебя две переменных с одинаковым именем. Это неприлично.

Я только сейчас вспомнил, что постраничного вывода у меня там в галерее нет :) Есть просто разный построчный :)
« Последнее редактирование: 24 Июня 2004, 12:29:38 от RomikChef »

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

  • новичЕк
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 5698
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
Как правильно разбить постранично?
« Ответ #6 : 24 Июня 2004, 11:49:13 »
ХА ХА ХА

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

  • новичЕк
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 5698
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
Как правильно разбить постранично?
« Ответ #7 : 24 Июня 2004, 12:03:40 »
Цитировать
gregor:
for ($i; $i<$numpages; $i++){

тебе надо исправить только одну эту строчку.
сделав ее осмыленной.

Оффлайн gregor

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 8
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Как правильно разбить постранично?
« Ответ #8 : 26 Июня 2004, 16:18:06 »
Вот что  меня вышло, выводит по 20, но при нажатии на следущую страницу опять те-же фотки!!! Как сказать чтоб из массива брались следущие 20?
Спасибо!

if ($handle = @opendir("small")){
while (
false !== ($file readdir($handle))) 
 if (
$file != "." && $file != ".."$filesarr[] = trim($file);
 
$fotos_per_page 20;
$total_pages ceil(count($filesarr)/$fotos_per_page);
 if ((
$_GET[\'from\']<1) || ($_GET[\'from\']>$total_pages)) $_GET[\'from\']=1;
for ($i=0; $i<$fotos_per_page; $i++)
 {
 echo "<img src=\\"small/$filesarr[$i]\\" border=0>

\\n";
}
 for ($i=0; $i<$total_pages; $i++)
{
 if ($i==$_GET[\'from\']) echo " $i ";
else echo " <a href=\'?from=".($i+1)."\'>".($i+1)."</a> ";
 }
closedir($handle);
}

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

  • новичЕк
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 5698
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
Как правильно разбить постранично?
« Ответ #9 : 26 Июня 2004, 16:26:34 »
прикольно.
я ровно неделю назад написал
Цитировать
циклу можно задать начальное и конечное значение

а воз и ныне там...
конечное заменили, а начальное как было - так и осталось

Оффлайн gregor

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 8
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Как правильно разбить постранично?
« Ответ #10 : 26 Июня 2004, 16:51:44 »
RomikChef
ой, точно!!!

 

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