Na wstępie zaznaczam, że jestem zielony jeśli chodzi o PHP.
Mój kolega napisał mi pół roku temu skrypt do wyszukiwania aukcji na allegro
<?php function gethtml($url) { $curl = curl_init(); curl_setopt($curl, CURLOPT_URL, $url); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); $strona = curl_exec($curl); curl_close($curl); return $strona; } function znajdzurl($adres) { $poz = stripos($adres,'<td class="cellName">'); if ($poz==FALSE) return FALSE; $poz = $poz + 33; $epoz = stripos($adres,' class="alleLink">',$poz); return $link; } $strona = gethtml("http://allegro.pl/listing/user.php?string=" . urlencode($_GET["nazwa"]) . "&us_id=21099150"); $url = znajdzurl($strona); $head = "http://www.allegro.pl". $url; if ($url==FALSE) $head = "http://allegro.pl/show_user_auctions.php?uid=21099150"; ?>
Skrypt działa tak- podajemy parametr wyszukiwania, np "Ultraslim Red" :
http://allegro.pl.senacase.eu/sfind.php?nazwa=iphone+4+ultraslim+red
skrypt wyszukuje aukcje użytkownika o id 21099150, ze słowami kluczowymi "iphone 4 ultraslim red" i przechodzi do pierwszej aukcji na liście wyszukanych przedmiotów spełniających warunki wyszukiwania. W przypadku nie znalezienia aukcji z takimi słowami kluczowymi pokazuje wszystkie przedmioty
Skrypt działał prawidłowo do czasu aż allegro wprowadziło niedawno spore zmiany na swoim serwisie. Od tego czasu skrypt najpierw wyświetlał komunikat:
"Header may not contain more than a single header, new line detected. in [...]"
Teraz po prostu pokazuje stronę ze wszystkimi wystawionymi przedmiotami.
Czy ktoś potrafi wchodząc na źródło strony
http://allegro.pl/listing/user.php?string=...;us_id=21099150
wyszukać błędy w funkcji "znajdzurl" w moim skrypcie?
Próbowałem zmienić go na własną rękę, jednak efekty są marne.