[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Следующая страница в галлереи
qwerty
вот скрипт выводящий картинки из указанной дериктории.

PHP
$dir='./mult';
$handle opendir($dir);
$value 4// задание количества изображений в строке
$handle = @opendir"$dir");

while(
$file readdir($handle)) //юзаем директорию с картинками
{
    
$file $dir."/".$file;
    @
$temp GetImageSize ($file ); // Считывание параметров изображения
    
if(@getimagesize($file) == true//проверка на ошибки . ..
    
{
        if (
$temp[2] == || $temp[2] == || $temp[2] = //проверка на правильность флагов файла
        
{
            
$dirpic substr($file0strrpos($file'.'));
            
//if (file_exists($dir)) {  } else { mkdir("$dir",0777); echo "NEW";}

            //echo $file;
            
echo "<a href=../close/private/$dirpic.zip><img src=$file width=175 height=175 font border=3>"; echo "&nbsp";

            
$counter ++;  // счетчик проверки изображений в ряд
            
if($counter == $value)
            {
                echo 
"<br>";
                
$counter 0;
            }
        }
    }
}


подкинте плиз идею, как сделать чтобы при наполнении страници до 24 картинок, автоматом что ли появлялась вторая страница и тд.


 ! 

М
А код форматировать кто будет? А.С. Пушкин?
kirik




Спустя 23 минуты, 30 секунд (28.05.2009 - 21:54) kirik написал(а):
Я бы на твоем месте воспользовался бы scandir();, и потом выводил нужные части массива в зависимости от того, на какой странице находится юзер (передается через GET параметр). А еще круче будет закэшировать результат сканирования папки, чтобы каждый раз не сканировать папку заново. А еще круче будет сделать твою галерею на БД smile.gif Прикрутить комменты и голосование, а потом продать гуглу wink.gif

Спустя 5 минут, 20 секунд (28.05.2009 - 21:59) qwerty написал(а):
для меня это слишком круто smile.gif

Спустя 1 час, 6 минут, 25 секунд (28.05.2009 - 23:05) kirik написал(а):
qwerty
со scandir() получилось?

Спустя 9 часов, 57 минут, 27 секунд (29.05.2009 - 09:03) qwerty написал(а):
нет не получается, принцип не могу понять

Спустя 59 минут, 34 секунды (29.05.2009 - 10:03) kirik написал(а):
scandir() возвращает массив файлов в указанной папке. Просканировав папку ты получаешь: пути к файлам и количество файлов. Из количества ты можешь высчитать количество страниц.
Итак имеем массив, в котором каждый элемент - путь к картинке. Тоесть $array[0] выдаст первую картинку, $array[10]-одинадцатую итд. Тебе нужно разбить по страницам запрос, выводя на странице 24 картинки, так? На первой странице у тебя будут элементы массива 0-23, на второй 24-48.
Все что нужно - сделать цикл, который будет выводить нужные картинки. Что-то типа:

PHP
// $pics - массив в котором содержатся файлы из просканированной папки
$on_page 24// количество фоток на сранице
$_GET['page'] = (isset($_GET['page']) && $_GET['page'] > 1) ? $_GET['page'] : 1// тут принимаем номер страницы и обрабатываем

for($i $on_page * ($_GET['page'] - 1), $c 0$c $on_page$i++, $c++)
{
    if(!isset(
$pics[$i])) // если массив кончился - прирываем цикл
        
break;

    echo 
$pics[$i];
}


Этот код только для примера, и его следует очень сильно перекроить, если что..
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.