Реально ли сделать следующее. Есть сайт, тырят картинки, на сайте своровавшего картинку стоит мой url до файла Код (Text): http://site.ru/upload/images.jpg Реально ли перекинуть пользователя с данной страницы в мой сайт, сделать какой нибудь редирект?
не реально. инициировать переход уровня "страницы" может только хост-владелец. но вы можете не показывать картинки если запрос пришел с этого хоста. гуглите про хотлинкинг
В Opera есть нужная хроническая бага ))) Только доля оперы порядка 2%. Нормальные браузеры картинкой не зацепишь.
печаль, хотлинк тоже не хотелось бы юзать, ну в смысле по рефереру другую картинку выводить. Хотелось бы наказать так что бы желание совсем пропала копипастить =) И сделать если при скачивании файла с сервера отдавать не картинку а хтмл страницу тоже нельзя?
а как вы отличите скачивание от запроса с вашей же страницы? для сервера это будет GET http://yourhost.tld/path/to/image.ext HTTP/1.1 плюс переменные окружения, которым не очень-то следует доверять.
по рашке доля оперы некислая и составляет порядка четверти всех агентов. http://my-chrome.ru/statistika-brauzerov/
Во как! Любовь зла, как говорится. Я сам долго ей пользовался, но со временем всё чаще стал натыкаться на неправильное поведение. А после известной новости на rutracker/ixbt/habrahabr про нежелание исправлять опасную багу, решил даже для тестов не использовать это г*.
Интересная мысль посетила! Но как реализовать такое ума не приложу, очень плохо знаком с .htaccess Вобщем хочется сделать следующее На сайте есть две папки в которых находятся изображения, в одной папке привьюшка, в другой фулл формат изображения /thumbs/ - привью /full/ - изображение Так вот, на сайте ворующем картинки, если он размещает картинку на своем сайте из папки /full/ то нужно как то затемнить картинку, т.е. по всей ее площади наложить еще одну картинку и написать "кликните для скачивания оригинала". Это не даст юзеру скачать картинку прямо с сайта разместившего мое изображение.
браузеру через ворующий сайт отдается картинка. статика. никаких мудростей с "кликните для скачивания оригинала" быть не может, не мелите чушь. но вы можете по хотлинкингу отдавать другое изображение. а ссылка для скачивания останется на совести сайта-вора. хотлинкинг либо разрешается либо ограничивается (но всегда можно обойти), но никаких извращений типа переместить пользователя к вам - без вставки гиперлинка у воришек не будет из соображений здравого смысла.
та вы меня не поняли, в последнем посте я писал о том если на сайте вора размещается картинка ссылка Код (Text): <a href="мой сайт">картинка</a> тупо вотермарк наложить и все! Вобщем реализовал наложение вотермарка на php + htaccess по рефереру определяю накладывать изображение или нет. Проблема в следующем, не пойму как сделать: 1. Есть картинка полупрозрачного фона 1х1px нежно чтобы картинка накладывалась по всей длине. 2. Плюс к первому на картинки по центру написать текст Вот код Код (Text): header('Content-type: image/jpeg'); // берем картинку $img = $_GET['src']; // определяем позицию watermark $p = $_GET['p']; if(!$p) $p = 'c'; // качество $q = $_GET['q']; if(!$q || $q<0 || $q>100) $q = '93'; $filetype = substr($img,strlen($img)-4,4); $filetype = strtolower($filetype); if($filetype == ".gif") $image = @imagecreatefromgif($img); if($filetype == ".jpg") $image = @imagecreatefromjpeg($img); if($filetype == ".png") $image = @imagecreatefrompng($img); if (!$image) die(); // Получение размера изображения для оригинального изображения $img_w = imagesx($image); $img_h = imagesy($image); $watermark = @imagecreatefrompng('watermark.png'); // Получение размера изображения для водяных знаков $w_w = imagesx($watermark); $w_h = imagesy($watermark); switch($p) { case 'tl': $x = 0; $y = 0; break; case 'tc': $x = ($img_w - $w_w)/2; $y = 0; break; case 'tr': $x = $img_w - $w_w; $y = 0; break; case 'cl': $x = 0; $y = ($img_h - $w_h)/2; break; case 'c': $x = ($img_w - $w_w)/2; $y = ($img_h - $w_h)/2; break; case 'cr': $x = $img_w - $w_w; $y = ($img_h - $w_h)/2; break; case 'bl': $x = 0; $y = $img_h - $w_h; break; case 'bc': $x = ($img_w - $w_w)/2; $y = $img_h - $w_h; break; case 'br': $x = $img_w - $w_w; $y = $img_h - $w_h; break; } imagecopy($image, $watermark, $x, $y, 0, 0, $w_w, $w_h); imagejpeg($image, null, $q); imagedestroy($image); imagedestroy($watermark); Может кто поможет =) Я не могу продублировать изображение, если ставлю к примеру так Код (Text): imagecopy($image, $watermark, $x, $y, 0, 0, $img_w, $img_h); получаю 1х1px а все остальное черный квадрат Малевича ))
ну нужно оригинал заполнить картинкой 1x1px чтобы затемнить ее сейчас приведу пример желаемого результата, минутку Добавлено спустя 6 минут 10 секунд: Вот к примеру оригинал а вот что хочется получить
Без javascript'а не хочется делать php, затягивает js в свою дырку =) Будьте осторожны =))) А opacity и absolute отменили, css?) Если нужда, обработка изображений, то да тут понадобится альфа-канал... Я имел ввиду, что типо как на аве будет) некоторые и такие вопросы попадаются ляпну сразу и тут)
ну если сайт-вор согласится стилями затемнять и подписывать изображения - то обработка на стороне владельца не понадобится, да =)