Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [HTML][PHP]Skrypt wyszukiwania aukcji na Allegro przestał działać
-kwark-
post 18.11.2011, 16:12:47
Post #1





Goście







Witam!
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

  1. <?php
  2.  
  3. function gethtml($url)
  4. {
  5. $curl = curl_init();
  6. curl_setopt($curl, CURLOPT_URL, $url);
  7. curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
  8. $strona = curl_exec($curl);
  9. curl_close($curl);
  10. return $strona;
  11. }
  12.  
  13. function znajdzurl($adres)
  14. {
  15.  
  16. $poz = stripos($adres,'<td class="cellName">');
  17. if ($poz==FALSE) return FALSE;
  18. $poz = $poz + 33;
  19. $epoz = stripos($adres,' class="alleLink">',$poz);
  20. $link = substr($adres,$poz,$epoz-$poz-1);
  21. return $link;
  22.  
  23. }
  24.  
  25. $strona = gethtml("http://allegro.pl/listing/user.php?string=" . urlencode($_GET["nazwa"]) . "&us_id=21099150");
  26. $url = znajdzurl($strona);
  27. $head = "http://www.allegro.pl". $url;
  28. if ($url==FALSE) $head = "http://allegro.pl/show_user_auctions.php?uid=21099150";
  29. header( 'Location: '. $head);
  30. ?>



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.
Go to the top of the page
+Quote Post
cycofiasz
post 18.11.2011, 17:30:49
Post #2





Grupa: Zarejestrowani
Postów: 711
Pomógł: 127
Dołączył: 5.07.2008
Skąd: Łódź

Ostrzeżenie: (0%)
-----


  1. function znajdzurl($adres)
  2. {
  3. preg_match('#i([0-9]+)\.html" class="alleLink#',$adres,$matches);
  4. if(isset($matches[1])) return '/show_item.php?item=' . $matches[1];
  5. else return FALSE;
  6. }


Ten post edytował cycofiasz 18.11.2011, 17:46:49
Go to the top of the page
+Quote Post
-kwark-
post 18.11.2011, 17:44:22
Post #3





Goście







Podmieniłem funkcję w skrypcie na taką którą podałeś i nie bardzo to działa:

http://allegro.pl.senacase.eu/sfind.php?nazwa=iphone+red

W reszcie kodu nic nie zmieniałem (a może powinienem?), tak jak mówiłem, jestem kompletnie zielony w temacie.
Ale mimo wszystko i tak dzięki, poczekam na dalsze rady.
Go to the top of the page
+Quote Post
cycofiasz
post 18.11.2011, 17:47:18
Post #4





Grupa: Zarejestrowani
Postów: 711
Pomógł: 127
Dołączył: 5.07.2008
Skąd: Łódź

Ostrzeżenie: (0%)
-----


Moja pomyłka, edytowałem swój poprzedni post, spróbuj teraz
Go to the top of the page
+Quote Post
-kwark-
post 18.11.2011, 17:59:23
Post #5





Goście







Działa smile.gif))
Wielkie dzięki. Jeśli byłbyś zainteresowany kiedyś zakupem etui do iPhone'a albo iPada to dam Ci 20% zniżkę smile.gif
Dzięki wielkie
Go to the top of the page
+Quote Post
-Bercikos-
post 21.02.2013, 17:39:47
Post #6





Goście







Witam, jestem początkujący. Jak to wstawić na swoją stronę internetową? Mam taką wyszukiwarkę ale odsyła ona do google. Co zrobić żeby działa w allegro?
html:
<div class="region4_search">
<div class="region4_search-inner">
<div class="search_container_text">Co chcesz znaleŸźć?</div>
<form action="http://www.google.pl/search" method="get">
<input type="text" onblur="if (this.value == '') {this.value = 'np. Dźwig, jacht, kostiumy, zabawy dla dzieci ..';}"
onfocus="if (this.value == 'np. Dźwig, jacht, kostiumy, zabawy dla dzieci ..') {this.value = '';}"
value="np. Dźwig, jacht, kostiumy, zabawy dla dzieci .." name="q" class="search_area1"/>
<div class="clear"></div>
<div class="search_text2">Gdzie?</div>
<input type="text" onblur="if (this.value == '') {this.value = 'np. Warszawa, 00-123';}"
onfocus="if (this.value == 'np. Warszawa, 00-123') {this.value = '';}"
value="np. Warszawa, 00-123" name="q" class="search_area2"/>
<input class="search" type="submit" src=" " name="search" value="Szukaj"/>
<div class="clear"></div>
<div class="search_text3"> <a href="index.html">Wyszukiwanie zaawansowane </a></div>
</form>
</div>
</div>
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 4.05.2025 - 08:24