Xpoint
   [напомнить пароль]

Perl GD преобразует фоты. Как грузить преобразованные фотки?

Метки: [без меток]
2007-10-15 00:59:41 [обр] German[досье]

Perl GD преобразует фотографии. Как грузить преобразованные фотки?

Я использую тот же самый скрипт для загрузки фотографий, для внесения водяного знака фирмы и для удаления фотографий. То есть скрипт грузит повтороно сам себя пока он нужен.

Но не в этом суть. Я вношу водяной знак на фотографии. После перезагрузки появляются те же фотографии, без водяного знака. Имена файлов фотографий связаны с конкретным отелем, поэтому переименовывать их не хочется. (Там скрипт сам ищет названия которые можно использовать повторно, названия определяют порядок сортировки. Не хочется!)

Можно ли заставить Эксплорер грузить новые фотографии (с внесенным водяным знаком?)
Такой тег многопользы не приносит:

<meta http-equiv="Expires" content="0">

Perl у меня печатает обыкновенный HTML на Apache. Мне нужно, чтобы содержимое файла и фотографии не использовались повторно в браузере клиента. Хотя бы фотографии повторно не использовались!

спустя 2 часа 51 минуту [обр] Роман Чемисов(56/327)[досье]
German[досье]
Ничего не понял. Что Вы хотите? Покажите код.
спустя 7 минут [обр] MiRacLe(3/77)[досье]
Вы что же налету при каждом запросе клиента добавляете watermark на картинки ?
Но если это действительно надо, то добавьте filemtime GET параметром к url-у картинки
спустя 8 часов [обр] German[досье]

Я могу, конечно и код показать, но там больше 500 строк, я на пальцах-то понятней объясню. У фирмы есть база данных отелей. Их пока немного. 1500 отелей по 50 фотографий в каждом.

На некоторых фотографиях "водяной знак" был внесен вручную. Но некоторых — нет. Теперь работники фирмы будут отмечать фотки, в которых нет водяного знака — и таким образом вносить в них водяной знак. Но они должны видеть сразу результат своих действий.

А то они трижды загрузят водяной знак и перепортят все фотки.
Вот такой код картинки:

print qq~<td><img src="/$nf[2]/$_" alt="$_" width="$w" height="$h" border="0"></td></tr>\n~;

И куда же писать filemtime GET ??

Не вручную же мне адобом в 100 тыщ фотографий водяной знак вносить. Да еще не каждую, а выбирать. То есть сам я все равно никаких водяных знаков вносить не буду. Нужно работникам фирмы предоставить такую возможность.

спустя 3 минуты [обр] Fd(3/35)[досье]
Быть может Pragma?
спустя 40 минут [обр] German[досье]

Такой вариант не работает:

<meta http-equiv="Expires" content="Mon, 8 Oct 2007 05:00:00 GMT">
<meta http-equiv="Pragma" content="no-cache">

и такой вариант тоже не работает:

<meta http-equiv="Expires" content="now">
<meta http-equiv="Pragma" content="no-cache">

Cache-Control: no-store, no-cache, must-revalidate такой заголовок кушает за милую душу (не ругается на ошибки). Но толку опять 0 (нуль)
Последний вариант тоже ничего не даёт:

<meta http-equiv="Expires" content="10 ms">
<meta http-equiv="Pragma" content="no-cache">

Перименовывать очень не хочется

спустя 17 минут [обр] German[досье]

Уважаемый Роман Чемисов[досье]!! Если нужно я повыберу код, который к делу, не весь же его сюда грузить (555 строк)

После reload появляется фотография с внесенным водяным занком. Но даже при reload интерфейс же вносит водяной знак еще раз.

Я мог бы сказать: перезагрузите страницу. Но тоже нельзя: интерфейс второй раз знак внесет водяной знак. Может можно указать какие файлы нужно удалить из кэша?

спустя 11 минут [обр] Fd(3/35)[досье]

Подразумевалось вместо meta выдавать хидеры. Попробуйте. Но моё личное мнение, наиболее адекватный способ именно тот, что указал MiRacLe[досье].

my $mtime = ( stat "/$nf[2]/$_" )[9];
print qq~<td><img src="/$nf[2]/$_?$mtime" alt="$_" width="$w" height="$h" border="0"></td></tr>\n~;

Попробуйте.

спустя 27 минут [обр] Роман Чемисов(56/327)[досье]
German[досье]
Я не пойму в чём проблема: у Вас на странице есть изображение (со своим адресом). Пользователь нажимает на кнопку Добавить водяной знак, после этого изображение должно измениться (добавляем водяной знак) без перезагрузки страницы. Правильно?
Тогда ответ Вам уже подсказали — добавляйте случайную информацию к имени изображения.
спустя 12 минут [обр] Fd(3/35)[досье]
Ой. Опечаталася. В stat надо передавать путь к изображению от корня физического диска сервера.
спустя 2 минуты [обр] MiRacLe(3/77)[досье]
добавляйте случайную информацию к имени изображения.
Не случайную. Что за пережитки каменного века?
спустя 45 минут [обр] German[досье]

Уважаемый Роман Чемисов[досье]!! Написал Вам длинное послание, но необходимость в нём отпала. Вчера вечером я плохо формулировал мысли.

Спасибо Вам огромное Fd[досье], Предложение MiRacLe[досье] действительно идеальное. Все работает отлично. Я и не знал, что туда можно добавлять такую информацию.

Ещё раз выражаю специальную признательность MiRacLe[досье]
Я уже думал распечатывать в поток IMG перлом информацию из файла (у меня такие скриптики хорошо работают).

Но это — гораздо лучше! Неужели туда все равно что было добавлять после знака вопроса?

спустя 15 минут [обр] Fd(3/35)[досье]
Ну, в принципе, да. Просто браузер каждый раз воспринимает изображние с параметром как новое, потому как не находит с таким урлом у себя в кеше, и, соответственно, загружает его снова с сервера.
спустя 15 минут [обр] German[досье]
Благодарю всех еще раз. Простая проблема казалась совсем неразрешимой. :-)
Powered by POEM™ Engine Copyright © 2002-2005