Forum Webscript.Ru
Программирование => Perl => Тема начата: Mictian от 07 Апреля 2003, 17:45:03
-
Подскажите, как лучше сделать. Задача открыть каталог, в котором дочертиков картинок формата xxx.jpg bxxx.jpg, где xxx числа. нужно вставить на страничку все картинки типа xxx.jpg, и сделать с них ссылки на bxxx.jpg.
Больше всего меня интересует хранение картинок в хэше? как реализовать? если в массиве.... в общем подскажите :)
-
если наличие соответствующей пары bxxx - xxx гарантировано, то как-то так:
opendir DIR, $DirName;
@pics=readdir(DIR);
closedir DIR;
foreach (@pics)
{
print "
"
if (/^[0-9]{3}\\.jpg$/);
};
-
Возникла проблема :) картинки находятся ЗА htmlroot, поэтому приходится делать следующее:
opendir(DIR, "$ENV{DOCUMENT_ROOT}/../files/img/$sel") || die "$!";
@pic=grep{!/\\A\\.\\.?\\z/} readdir(DIR);
closedir(DIR);
foreach (@pic){
if (/^[0-9]{3,5}\\.jpg$/){
open(JPG, "$ENV{DOCUMENT_ROOT}/../files/img/$sel/$_") || die "$!";
binmode(JPG); binmode(STDOUT);
while(read(JPG, $buff, 8*2**10)){
print STDOUT $buff;
}
}
}
но на страницу выходит только одна картинка, про хтмл я вообще молчу :(
-
Mictian
Ты хочешь _одним_ скриптом вывести много картинок?
Не получится, браузер делает отдельный запрос на получение _каждой_ картинки.
Да и как он, по-твоему, должен понять, где кончилась одна картинка, где началась другая, а где идет HTML, если ты в бинарной моде это все подряд валишь?
-
Дык, вот я и спрашиваю, как сделать вывод картинок НЕ из рутовой папки, не показываю при этом пользователю пути...
-
Mictian:
как сделать вывод картинок НЕ из рутовой папки, не показываю при этом пользователю пути...
Написать отдельный скрипт для вывода картинок или в зависимости от параметра отдавать картинки или страничку.
-
К примеру? мне ничего в голову не приходит...
-
Например, одним скриптом выдаешь HTML:

а скрипт gimg ищет по id картинку и выдает ее браузеру.
-
Всем спасибо, сделал :)