Модераторы: Aliance, skyboy, MoLeX, ksnk

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> вывод картинки из папки, нид сорс код 
V
    Опции темы
bars80080
Дата 6.3.2009, 18:53 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

Репутация: 2
Всего: 315



скобку одну проглядел:

Код

if(!in_array($pathInfo['extension'], array('jpg','gif','png'))) continue;


попробуйте так
PM MAIL WWW   Вверх
Photon
Дата 7.3.2009, 00:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Злобный программер
**


Профиль
Группа: Участник
Сообщений: 282
Регистрация: 27.2.2009
Где: Таганрог

Репутация: нет
Всего: 12



Код

    $imageDir = $_SERVER['DOCUMENT_ROOT'].'/Images/';
    $urlDir = '/Images/';
    if (!array_key_exists('cat',$_REQUEST)) {
        $dh = opendir($imageDir);
        while ($dir = readdir($dh)) {
            if (is_dir($_SERVER['DOCUMENT_ROOT'].'/Images/'.$dir) && $dir != '.' && $dir != '..')
                echo "<a href='?cat={$dir}'>{$dir}</a><br />";
        }
        closedir($dh);
    }
    else {
        $dh = opendir($imageDir.$_REQUEST['cat']);
        while ($file = readdir($dh)) {
            if ($file != '.' && $file != '..') {
                $path = pathinfo($imageDir.$_REQUEST['cat']."/{$file}");
                if(!in_array($path['extension'],array('gif','jpg','png')))
                    continue;
                echo "<img src='".$urlDir.$_REQUEST['cat']."/{$file}'>";
            }
        }
        echo "<p align='center'><a href='{$urlDir}'>К списку галерей</a></p>";
    }


Ложим данный скрипт в папку Images и радуемся жизни.. smile  Ну если, конечно, не надо галереи какими-нибудь осмысленными именами обзывать..

Это сообщение отредактировал(а) Photon - 7.3.2009, 13:40


--------------------
With best regards..
PM MAIL ICQ Skype GTalk Jabber   Вверх
chaosmage
Дата 7.3.2009, 12:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 2.3.2009

Репутация: нет
Всего: нет



Цитата(bars80080 @ 6.3.2009,  18:53)
скобку одну проглядел:

Код

if(!in_array($pathInfo['extension'], array('jpg','gif','png'))) continue;


попробуйте так

Вот последний вариант:
Код

<?php
if(!empty($_GET['cat'])) {
    $dir = $_GET['cat'];
}
if(empty($dir)) { echo 'нет такого каталога; exit; }
$imgdir = '/var/www/images/'.$dir;  
$imgurl = 'images/'.$dir;
$d = opendir($imgdir);
$photos = array(); $i = 0;
while($e = readdir($d)) {
    if($e == '.' or $e == '..') continue;
    $path = $imgdir.'/'.$e;
    $pathInfo = pathinfo($path);
    if(!in_array($pathInfo['extension'], array('jpg','gif','png'))) continue; 
    $photos[$i] = '/'.$e;
    $i++;
}
sort($photos);
for($i = 0; isset($photos[$i]); $i++) {
    echo '<img src="'.$dir.$photos[$i].'" />'."\r\n";
}
?>


14 строку заменил на предложенный вариант
15 и 20 подредактировал т.к. на странице выводилось http://сайт/images/images/4/image010.jpg
я так и не понял почему , тупо подогнал

прогнал все папки, всё работает. Круто !!!


Photon, копипастнул ваш скрипт в index.php, но он выдает ошибку. Не осилил как пофиксить, но всё равно спасибо !!!
PM MAIL   Вверх
Photon
Дата 7.3.2009, 13:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Злобный программер
**


Профиль
Группа: Участник
Сообщений: 282
Регистрация: 27.2.2009
Где: Таганрог

Репутация: нет
Всего: 12



chaosmage,  весьма странно..  Я-то его проверил перед тем, как сюда выкладывать..

Хотя идея у меня есть..  Если у вас папка с галереями называется 'images', то работать не будет..
Должно быть четкое соответствие регистра символов..

Вот поправленный вариант на все случаи жизни.. smile

Код

    $end_dir = dirname($_SERVER['PHP_SELF']);
    $imageDir = $_SERVER['DOCUMENT_ROOT']."{$end_dir}/";
    $urlDir = "$end_dir/";
    if (!array_key_exists('cat',$_REQUEST)) {
        $dh = opendir($imageDir);
        while ($dir = readdir($dh)) {
            if (is_dir($imageDir.$dir) && $dir != '.' && $dir != '..')
                echo "<a href='?cat={$dir}'>{$dir}</a><br />";
        }
        closedir($dh);
    }
    else {
        $dh = opendir($imageDir.$_REQUEST['cat']);
        while ($file = readdir($dh)) {
            if ($file != '.' && $file != '..') {
                $path = pathinfo($imageDir.$_REQUEST['cat']."/{$file}");
                if(!in_array($path['extension'],array('gif','jpg','png')))
                    continue;
                echo "<img src='".$urlDir.$_REQUEST['cat']."/{$file}'>";
            }
        }
        echo "<p align='center'><a href='{$urlDir}'>К списку галерей</a></p>";
    }


Теперь неважно, где находятся галереи, просто положил этот скрипт в папку с галереями и все..

Это сообщение отредактировал(а) Photon - 7.3.2009, 13:39


--------------------
With best regards..
PM MAIL ICQ Skype GTalk Jabber   Вверх
bars80080
Дата 7.3.2009, 19:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

Репутация: 2
Всего: 315



Цитата(chaosmage @  7.3.2009,  11:12 Найти цитируемый пост)
подредактировал

вот, теперь уже пошла настоящая работа
PM MAIL WWW   Вверх
chaosmage
Дата 20.3.2009, 09:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 2.3.2009

Репутация: нет
Всего: нет



Цитата(Photon @ 7.3.2009,  13:25)
Вот поправленный вариант на все случаи жизни.. smile


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

bars80080, спасибо
PM MAIL   Вверх
anrs
Дата 18.4.2009, 22:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 87
Регистрация: 17.12.2008

Репутация: нет
Всего: нет



Приветствую всех .

Переделал код под себя 

Код

        $dh = opendir($imageDir.$_REQUEST['cat']);
        while ($file = readdir($dh)) {
            if ($file != '.' && $file != '..') {
                $path = pathinfo($imageDir.$_REQUEST['cat']."/{$file}");
                if(!in_array($path['extension'],array('png')))
                    continue;
                echo "<table width='100%'><tr><td ><img src='".$urlDir.$_REQUEST['cat']."/{$file}'></td></tr></table>";
            }
        }


Подскажите пожалуйста , как разбить все картинки по страницам ( к примеру на каждой страничке по 20 картинок ) 

Ну или хотябы , чтобы выводилось только 10 картинок случайным образом .

Благодарю за внимание 
PM MAIL   Вверх
bars80080
Дата 19.4.2009, 00:02 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

Репутация: 2
Всего: 315



по таблице на картинку?

Цитата(anrs @  18.4.2009,  22:37 Найти цитируемый пост)
чтобы выводилось только 10 картинок случайным образом .

не выводишь картинки сразу в браузер, а записываешь их имена в массив $images; далее считаешь их, создаёшь массив случайных значений и выводишь только их

Код

        $dh = opendir($imageDir.$_REQUEST['cat']); $images = array();
        while ($file = readdir($dh)) {
            if ($file != '.' && $file != '..') {
                $path = pathinfo($imageDir.$_REQUEST['cat']."/{$file}");
                if(!in_array($path['extension'],array('png')))
                    continue;
                $images[] = $file;
            }
        }
$countI = count($images);
$maxI = 10;
$arr = array();
if($countI > $maxI) $maxis = $countI;
else $maxis = $maxI;
while(count($arr) < $maxis) {
    $i = rand(0, ($maxis - 1));
    if(in_array($i, $arr)) continue;
    $arr[] = $i;
}

for($i = 0; $i < $maxis; $i++) {
                echo '<table width="100%"><tr><td><img src="'.$urlDir.$_REQUEST['cat'].'/'.$images[$arr[$i]]'" /></td></tr></table>';
}



Цитата(anrs @  18.4.2009,  22:37 Найти цитируемый пост)
как разбить все картинки по страницам ( к примеру на каждой страничке по 20 картинок ) 

поиск по темам "пагинатор" или создание навигации по страницам
PM MAIL WWW   Вверх
Ответ в темуСоздание новой темы Создание опроса
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Графика | Следующая тема »


 




[ Время генерации скрипта: 0.0908 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.