Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][cURL] cURL + preg_match
Forum PHP.pl > Forum > Przedszkole
ownede
Cześć,

Napisałem sobie prosty skrypt z użyciem biblioteki cURL, który wysyła formularz i pokazuje stronę zwrotną.
Chciałbym jednak, żeby wyświetlał tylko wybrane dane z <pre>Tekst</pre> i <a href='link'>.

Próbowałem to zrobić za pomocą preg_match, jednak nie wychodziło.
Niestety wyświetlało również całą pozostałą zawartość strony.

Może ktoś podpowiedzieć?

Oto mój kod:
  1. <?
  2. $url = 'http://www.kacpero.pl/compiform.php';
  3. $post = 'name=xeD&go=send';
  4.  
  5. $curl = curl_init();
  6. curl_setopt($curl, CURLOPT_URL, $url);
  7. curl_setopt($curl, CURLOPT_REFERER, "http://www.kacpero.pl/");
  8. curl_setopt($curl, CURLOPT_USERAGENT, 'Kacperor 1.2.3');
  9. curl_setopt($curl, CURLOPT_TIMEOUT, 30); // timeout 30 sec
  10. curl_setopt($curl, CURLOPT_HEADER, 0); // nie chcemy zwracać nagłówka
  11. curl_setopt($curl, CURLOPT_POST, 1);
  12. curl_setopt($curl, CURLOPT_POSTFIELDS, $post);
  13. $strona = curl_exec($curl); // wywołujemy CURLa
  14. curl_close($curl); // zamykamy
  15. ?>
Pawel_W
podaj kod, który jest zwracany
ownede
Długi troche winksmiley.jpg
Tutaj zwrot: http://twojamuza.net/sh/curl.php
Pawel_W
  1. $pattern = '<pre>([^<]+)</pre>';
  2. preg_match($pattern, $strona, $matches);
  3. print_r($matches);
ownede
  1. $pattern = '/<pre>([^<]+)<\/pre>/';
  2. preg_match($pattern, $strona, $matches);
  3. print_r($matches);

Zwraca:
Array ( )
erix
  1. flagi
  2. zabrakło Ci escape'owania paru znaków
carbolymer
Cytat(ownede @ 31.08.2009, 22:53:31 ) *
Zwraca:
Array ( )


  1. $pattern = '#<pre>(.*?)</pre>#si';

i powinno dzialac
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.