запрет на выкачивание картинок

Cyber Jack

Новичок
запрет на выкачивание картинок

Я создаю сайт по "обоям" вощем нужно чтобы большие картинки открывались только на сайте когда кликаешь по привьюшкам. И нельзя было скачать большую картинку прямой ссылкой или телепортами там всякими.
Какой вообще принцип? подскажите.
 

Кром

Новичок
Cyber Jack
Отдавай картинку скриптом, в котом проверяй наличие куки. Куки ставь на той странице, где находится картинка.
Прямая ссылка на картинку в этом случае работать не будет.
 

Falc

Новичок
Cyber Jack
Или в сесию пихай индентификаторы просмтренных маленьких картинок, когда идет запрос к большой проверяй наличие маленькой в сессии.
 

Yukko

Новичок
wget позволяет выкачивать все рекурсивно, отправляет http-header'ы, использует куки... игнорирует robots.txt и т.д. смотрите в настройках.

HTTP options:
--http-user=USER set http user to USER.
--http-passwd=PASS set http password to PASS.
-C, --cache=on/off (dis)allow server-cached data (normally allowed).
-E, --html-extension save all text/html documents with .html extension.
--ignore-length ignore `Content-Length' header field.
--header=STRING insert STRING among the headers.
--proxy-user=USER set USER as proxy username.
--proxy-passwd=PASS set PASS as proxy password.
--referer=URL include `Referer: URL' header in HTTP request.
-s, --save-headers save the HTTP headers to file.
-U, --user-agent=AGENT identify as AGENT instead of Wget/VERSION.
--no-http-keep-alive disable HTTP keep-alive (persistent connections).
--cookies=off don't use cookies.
--load-cookies=FILE load cookies from FILE before session.
--save-cookies=FILE save cookies to FILE after session.
 

Falc

Новичок
Yukko
Куку можно писать яваскриптом, думаю wget такого не умеет,
 

Yukko

Новичок
Falc
--load-cookies=FILE load cookies from FILE before session.
ты мне ее только один раз пропиши.
 

Falc

Новичок
Yukko
Ну тогда можно формировать пути к картинкам на JS, правда это может отпугнуть нормальных пользователей.
 

Yukko

Новичок
Falc
а еще можно на каждую картинку ставить пароль... и высылать перед просмотром его на почту.
 

Yukko

Новичок
Я не претнедую на оригинальность и безошибочность мышления, поэтому у того, что мне пришло в пьяную голову могут быть слабые места и дыры... прошу критиковать.

Так вот.
Люди испуганы хакерами и лелеют свою анонимность, поэтому у некоторых стоит Zone Alarm, Norton Internet Security, которые блокируют куки, передачу referer'а и т.д.

Задача перед разработчиком написать приложение, которое
а. интуитивно понятно простому пользователю и не вносит в алгоритм его действий никаких дополнительных действий, кроме тех, которым научили на компьютерных курсах средней паршивости.
б. не позволит использовать разработанное программное обеспечение, что за собой повлечет либо отказ от автоматического скачивания, либо разработку специализированного для работы с конкретным сайтом программного обеспечения, что накладывает дополнительные человеко/часо/деньго расходы.
в. приложение должно использовать базовые функции, реализованные во всех браузерах.

В. Что интуитивно понятно пользователю в данном контексте?
О. Понятно то, что надо нажать на иконку изображения, чтобы открылась другая с ее увеличенным образчиком, для это при наведении на картинку курсор должен превратиться в белую ручку с пальчиком.

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

Вот и пишем:
<form name=picture_show action=show.php>
<input type=hidden name=pictureid value=213148>
<input type=image src=my_icon_output.php?id=213148>
</form>
в файле show.php отдаем изображение клиенту по ее id
my_icon_output.php выводит иконку этого изображения.

Выполнены все условия:
а. при нажатии на иконку будет сабмититься форма, при наведении на иконку курсора будет появляться белая ручка, как при наведении на ссылку.
б. я не видел еще ни одного даунлоадера, который может нажимать на кнопки. Т.е. для скачивания на автомате содержимого данного сайта прийдется писать дополнительное ПО.
в. реализовано стандартными средствами, работа с которыми реализована во всех браузерах.

Алгоритм можно усложнять.
А теперь ищите дыры, т.к. я уже не могу...
Бейте меня, критикуйте.
 

Кром

Новичок
Писать форму на каждый линк? Нет уж, увольте.
Все это реализуется с помощью javascript. А истории про хакеров оставьте для параноиков.
 

Кром

Новичок
Автор оригинала: Yukko
<input type=img src=blabla value=213148>
и обходимся одной формой и без поля хидден на всю страницу
213148 - id избражения.
Можно взлянуть на реализацию такой формы, допустим, для трех картинок?
 

McUrex_

ururunet
Много форм, иногда сносит крышу IE, который в свою очередь, к примеру, может перестать отрабатывать ссылки или показывать 80% страницы и впадать в задумчивое состояние, аля "Скачиваю я пилин".
Вышел, в своем, немного похожем случае так - юзал сессии (предаставил по кукам разбираться веб серверу) + авторизовал пользователя, но у меня изначально требования другие были, далее строил ссылки, а в начале держал заготовку формы пустую еще, к примеру сверху и далее ссылка:

<body....>
<form name='form' action='' method='post'>
<input type='hidden' name='do' value=''>
</form>
<!--Остальная страница-->
<a href="JavaScript: document.form.do.value='/script/do.php?id=112222'; document.form.submit();">Картинка или слово</a>

и т.п., столько скока нуна...

зы: Сессии - сила, брат.
 

Yukko

Новичок
Кром
про какую обработку какой карты изображений ты говоришь?
если я кликнул по картинке, то передается имя элемента формы плюс _x либо _y в виде ключа массива (а в качестве значения уже карта), вот его (ключ) и надо обработать. Код обработки я привел, выделив при помощи РВ ту часть, которая будет изменяться от изображения к изображению (числовой индекс).

McUrex_:
Много форм, иногда сносит крышу IE
Одна форма!!! Одна! и пример ее я привел.
 
Сверху