Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] Zmiana tekstu
Forum PHP.pl > Forum > PHP
Killerek
Witam, mam taki kod

  1. <?php
  2.  
  3. $curl = curl_init();
  4. //Inicujemy curl
  5.  
  6. curl_setopt($curl, CURLOPT_URL, 'http://miastozbrodni.ct8.pl/');
  7. //pobieramy dane z strony
  8.  
  9. curl_setopt($curl, CURLOPT_REFERER, "http://www.google.pl/");
  10. //ustawiamy refferer na www.google.pl (niektóre strony mają zabezpieczenia
  11.  
  12. curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1);
  13. //podążamy za ewentualnym przekierowaniem
  14.  
  15. curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
  16. //wyniku nie wyświetlamy a zapisujemy do zmiennej co ułatwia prace nad nim
  17.  
  18. curl_setopt($curl, CURLOPT_USERAGENT, 'Googlebot/2.1 (+http://www.googlebot.com/bot.html)');
  19. //ustawiamy useragent (niektóre strony mają zabezpieczenia)
  20.  
  21. curl_setopt($curl, CURLOPT_TIMEOUT, 30);
  22. //Maxymalny czas połączenia ze stroną
  23.  
  24. curl_setopt($curl, CURLOPT_HEADER, 0);
  25. //nie chcemy dołączać nagłówka
  26.  
  27. $strona = curl_exec($curl);
  28. //uruchamiamy skonfigurowanego curla
  29.  
  30. curl_close($curl);
  31. //zamykamy
  32.  
  33. echo "$strona"
  34. //wyświetlamy stronę
  35.  
  36. ?>


I tutaj się pojawia mój problem ponieważ chcę zrobić tak jeżeli na stronie http://miastozbrodni.ct8.pl/ (ponieważ tą ustawiłem w curl) będzie pisać "HERBATA" to zamiast pobierania całej strony

  1. echo "$strona"


na mojej stronie wyświetliło się tylko

  1. echo "Strona posiada napis HERBATA"


Ale jeżeli będzie pisać np. KAWA to niech się wyświetla tak

  1. echo "Strona posiada napis KAWA"


Jak mam to wykonać?
markonix
sciana.gif
Nie rozumiem w czym masz problem, pobierasz przecież całą treść strony, a chcesz poprzedzić ją innym stringiem - drugie echo choćby.


I uwaga:
  1. echo "$strona";

wystarczy:
  1. echo $strona;
Killerek
Myślałem nad

  1. $curl = curl_init();
  2. //Inicujemy curl
  3.  
  4. curl_setopt($curl, CURLOPT_URL, 'http://miastozbrodni.ct8.pl/');
  5. //pobieramy dane z strony
  6.  
  7. curl_setopt($curl, CURLOPT_REFERER, "http://www.google.pl/");
  8. //ustawiamy refferer na www.google.pl (niektóre strony mają zabezpieczenia
  9.  
  10. curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1);
  11. //podążamy za ewentualnym przekierowaniem
  12.  
  13. curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
  14. //wyniku nie wyświetlamy a zapisujemy do zmiennej co ułatwia prace nad nim
  15.  
  16. curl_setopt($curl, CURLOPT_USERAGENT, 'Googlebot/2.1 (+http://www.googlebot.com/bot.html)');
  17. //ustawiamy useragent (niektóre strony mają zabezpieczenia)
  18.  
  19. curl_setopt($curl, CURLOPT_TIMEOUT, 30);
  20. //Maxymalny czas połączenia ze stroną
  21.  
  22. curl_setopt($curl, CURLOPT_HEADER, 0);
  23. //nie chcemy dołączać nagłówka
  24.  
  25. $strona = curl_exec($curl);
  26. //uruchamiamy skonfigurowanego curla
  27.  
  28. curl_close($curl);
  29. //zamykamy
  30.  
  31. preg_match_all('[<pre style="word-wrap: break-word; white-space: pre-wrap;">(.+?)</span></pre>]is',$strona,$categoria);
  32. $tekst=strip_tags($categoria[0][0]);
  33.  
  34. echo " Strona posiada napis $tekst .";


Ale nie działa...

  1. preg_match_all('[<pre style="word-wrap: break-word; white-space: pre-wrap;">(.+?)</span></pre>]is',$strona,$categoria);


Dlatego, że w kodzie źródłowym strony pisze

  1. </head>
  2. <pre style="word-wrap: break-word; white-space: pre-wrap;">HERBATA</pre>
  3. </body>
  4. </html>
!*!
  1. preg_match('/(kawa|herbata)/', $source, $match);
  2. print_r($match);
  3.  
  4. if('kawa' == $match[1])
  5. {
  6. echo 'kawa';
  7. }
  8. elseif('herbata' == $match[1])
  9. {
  10. echo 'herbata';
  11. }
Killerek
Cytat(!*! @ 30.03.2013, 17:03:44 ) *
  1. preg_match('/(kawa|herbata)/', $source, $match);
  2. print_r($match);
  3.  
  4. if('kawa' == $match[1])
  5. {
  6. echo 'kawa';
  7. }
  8. elseif('herbata' == $match[1])
  9. {
  10. echo 'herbata';
  11. }


oo super! Tylko, że teraz mi wyskakuje tak Array ( [0] => herbata [1] => kawa ) herbata
!*!
U mnie działa. Pokaż co zrobiłeś.

edycja:

I tak ma być. Usuń print_r.
Killerek
Cytat(!*! @ 30.03.2013, 17:23:47 ) *
U mnie działa. Pokaż co zrobiłeś.

edycja:

I tak ma być. Usuń print_r.


Świetnie! Działa!


Dziękuje wszystkim za pomoc smile.gif !
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.