Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Problem z Else, Gdzie to wstawić ?
mefistofeles
post
Post #1





Grupa: Zarejestrowani
Postów: 255
Pomógł: 0
Dołączył: 23.06.2009

Ostrzeżenie: (10%)
X----


Mamy kodzik do sprawdzania pozycji na naszym guglu:

  1. <?
  2. $url = 'http://www.google.pl/search?q='.$key[$i].'&hl=pl&lr=lang_pl&safe=off&tbs=lr:lang_1pl&prmd=ivl&ei=mYIfTMj4MYKe_gb0j8SlDQ&start=0&sa=N&num=100';
  3.  
  4. $file = file_get_contents($url);
  5.  
  6. $pattern = '%<h3 class="r"><a href="(.*?)" class=l%i'; //wyrazenie do parsowania
  7. preg_match_all($pattern,$file,$return,PREG_SET_ORDER);
  8.  
  9. //wyswietlamy wyniki
  10. $iq=0;
  11. foreach($return as $val)
  12. {
  13. $iq++;
  14. if ( strstr($val[0], $site)) { echo '<p>Pozycja Twojej strony: '.$iq.'</p>';
  15. break;
  16. } else {
  17. echo'Nie znaleziono wśród 100 pierwszych wyników';
  18. }
  19. }
  20.  
  21. }
  22. ?>


Wszystko byłoby ok, gdyby nie to że w sytuacji gdy na 100 pierwszych miejscach nie ma naszej strony dostajemy nie takie info jak trzeba.
"Np jeśli słowo jest na 10 miejscu to 9 razy wydrukuje mi 'Nie znaleziono wśród 100 pierwszych wyników'.
Wiadomo, to else jest w złym miejscu ale w takim razie gdzie mam je wstawić bo mimo licznych prób efektu satysfakcjonującego nie otrzymałem ?

Dzięki za pomoc bo już mnie to lekko frustruje.
Go to the top of the page
+Quote Post
vermis
post
Post #2





Grupa: Zarejestrowani
Postów: 279
Pomógł: 56
Dołączył: 3.06.2010
Skąd: Tarnowskie Góry

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


  1. <?
  2. $url = 'http://www.google.pl/search?q='.$key[$i].'&hl=pl&lr=lang_pl&safe=off&tbs=lr:lang_1pl&prmd=ivl&ei=mYIfTMj4MYKe_gb0j8SlDQ&start=0&sa=N&num=100';
  3.  
  4. $file = file_get_contents($url);
  5.  
  6. $pattern = '%<h3 class="r"><a href="(.*?)" class=l%i'; //wyrazenie do parsowania
  7. preg_match_all($pattern,$file,$return,PREG_SET_ORDER);
  8.  
  9. //wyswietlamy wyniki
  10. $iq=0;
  11. $found = false;
  12. foreach($return as $val)
  13. {
  14. $iq++;
  15. if ( strstr($val[0], $site))
  16. {
  17. echo '<p>Pozycja Twojej strony: '.$iq.'</p>';
  18. $found = true;
  19. break;
  20. }
  21. }
  22. if (!$found) {
  23. echo'Nie znaleziono wśród 100 pierwszych wyników';
  24. }
  25.  
  26. }
  27. ?>

Go to the top of the page
+Quote Post
mefistofeles
post
Post #3





Grupa: Zarejestrowani
Postów: 255
Pomógł: 0
Dołączył: 23.06.2009

Ostrzeżenie: (10%)
X----


Ciekawy bajer hehe.
Dobre.

Jest już prawie idealnie.
Jedyne co to problem z ostatnim wynikiem.
Jest jeden za dużo.
Tzn. przy wpisaniu 5 słów dostaje dobre wyniki, ale mam też 6 (pusty) wynik, czyli pętla jest jakby
o 1 raz za długo wykonywana.

Można coś na to zaradzić ?
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 23.08.2025 - 13:14