Witam,
kradzież zdjęć na allegro to dosyć powszechny proceder, zazwyczaj użytkownicy zapisują zdjęcia i wrzucają na swój host bądź darmowy np imageshack.us.
jednak linkowanie zdjęć innego użytkownika allegro też się zdarza, jednak niewiele osób wie jak sobie z tym poradzić.
Dlatego szybki poradnik:
w naszym przypadku użytkownik "pożyczał" zdjęcia przeskalowane przez nasz skrypt serwerowy "product
thumb.php" składnia linku wygląda następująco productthumb.php?img=images/produkty/motip/000593_l.jpg&w=66&h=200
typowo ?img zródło, w= szerokość i h= wysokość. Jak to wykorzystać ?
dopisać na początku skryptu zapytanie o REFERER i odpowiednio wyciągnąć z adresu id aukcji
$jarek = explode('-i',$_SERVER['HTTP_REFERER']);
$jarek = explode('.',$jarek[1]);
teraz tablica aukcji użytkownika który sobie pożycza zdjęcia:
$jarek_array = array("2882371335", "2877391697", "2877328343", "2877279576", "2877368341", "2877406938", "2877422038", "2877443819", "2877457627", "2882359329", "2882371335", "2882387432", "2882424142", "2882443230", "2882463304", "2882478665", "2951672358", "2951696765", "2951743270", "2951765911", "2951785308", "2951799529", "2951824040", "2951832089");
proste zapytanie czy id wyciągnięte przez referer jest w tablicy, jeśli tak wciąga dodatkowy plik (dodatkowy żeby nie obciążać głównego skryptu używanego w naszym sklepie), jeśli nie ma w tablicy robi swoje bez zmian
if (in_array($jarek[0] , $jarek_array)){
include ('jarek.php');
}
else {
i teraz najważniejsza część dodatkowy plik, w naszym przypadku sprecyzowaliśmy jeszcze obrazki żeby każdy był inny.
`if($
GET['img'] == 'images/produkty/motip/000593l.jpg' OR $
GET['img'] == 'images/produkty/motip-000590l.jpg'){
$im2=imagecreatefromstring(base64
decode('kodbase64'));}
elseif($
GET['img'] == 'images/produkty/motip-269288l.jpg'){
$im2=imagecreatefromstring(base64_decode('kod_base64'));}
$im = imagecreatetruecolor(900, 200);
imagesavealpha($im, true);
imagealphablending($im, false);
$background = imagecolorallocatealpha($im, 255, 255, 255, 127);
imagefilledrectangle($im, 0, 0, 900, 220, $background);
imagealphablending($im, true);
imagecopy($im, $im2, 0, 0, 0, 0, imagesx($im2), imagesy($im2) );
ob
start();
imagepng($im);
$data = obget_clean();
header('Content-Type: image/png');
echo $data;
`
Kolejno:
zapytanie czy img o który prosi to ten, tworzy obrazek z zdekodowanych danych base64
wykorzystujemy bibliotekę gd do stworzenia tymczasowego obrazka o określonych wymiarach, wstawiamy w ten tymczasowy obrazek nasz obrazek z base_64 i zwracamy całość Określamy header dla przeglądarki żeby wiedziała ze to jest zdjęcie.
nie jestem pewny ale zapewne skrypt php by można zapisać jako zdjecie.jpg i by działało (nie testowałem)
I tutaj rezultat: w postaci screenshota ponieważ za dużo zapytań na sekundę przeciąża skrypt, ale dla zwykłych aukcji odwiedzanych kilkadziesiąt razy dziennie daje rade
//img819.imageshack.us/img819/4121/asdfnpe.png
Pozdrawiam. I to n ie jest reklama!!!
Komentarze (10)
najlepsze
Aby ktoś to zrozumiał musi być programistą php. Jeśli nim jest to zrobi to 'z ręki'. Więc dla kogo ten poradnik?
No i bardziej dla mnie niezrozumiałe:
Skoro macie swój serwer, to po co wrzucacie na imageshack?
Tylko nie mów że macie za mały, bo koszt tych kilku giga na zdjęcia to dosłownie kilkanaście zł rocznie.