Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Czemu tablica jest pusta podczas pobierania danych?
Saki
post
Post #1





Grupa: Zarejestrowani
Postów: 240
Pomógł: 2
Dołączył: 5.12.2010
Skąd: Fulda

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


Witam, mam dość dziwny problem z którym męnczę się dość długo, i postanowiłem zapytać na forum.
A więc.

Mam wyrażenie regularne które tak jakby działa, ale nie dokońca.

  1. preg_match_all("#<a href=\"/Profile/user_(.*).html\">(.*)</a>
  2. (.*) <a href=\"(.*)\">(.*)</a>#", $powiadomienia_tmp, $infos);


Podczas pobierania danych przez curl i przepuszczenie ich przez to wyrażenie regularne to tablica jest pusta.
Nawet gdy zapisze dane pobrane przez curl do MySQL i próbuje przepuscić źródło strony z MySQL to tablica też jest pusta.

Ale gdy źródło strony znajduje się w zmiennej na stronie to wyrażenie regularne działa.
Tutaj źródło strony: http://www.pastebin.pr0geek.com/view/5120ff09

Działa tylko kiedy zrobię:

  1. $strona = "CALE ŹRÓDŁO STRONY TUTAJ";
  2.  
  3. preg_match_all("#<a href=\"/Profile/user_(.*).html\">(.*)</a>
  4. (.*) <a href=\"(.*)\">(.*)</a>#", $strona, $infos);
  5.  
  6. print_r($infos); //pokazuje to co ma pokazywać
  7.  


Bardzo proszę o pomoc aby działało też to:

  1. $sql=mysql_query("SELECT * FROM tmp LIMIT 1");
  2. while($row=mysql_fetch_array($sql))
  3. {
  4. $powiadomienia_tmp = $row['tmp'];
  5. }
  6.  
  7. preg_match_all("#<a href=\"/Profile/user_(.*).html\">(.*)</a>
  8. (.*) <a href=\"(.*)\">(.*)</a>#", $powiadomienia_tmp, $infos);
  9.  
  10. print_r($infos); // pokazuje pustą tablice
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
wookieb
post
Post #2





Grupa: Moderatorzy
Postów: 8 989
Pomógł: 1550
Dołączył: 8.08.2008
Skąd: Słupsk/Gdańsk




A powiedz co robi preg_match_all?
Go to the top of the page
+Quote Post
Saki
post
Post #3





Grupa: Zarejestrowani
Postów: 240
Pomógł: 2
Dołączył: 5.12.2010
Skąd: Fulda

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


Cytat(wookieb @ 20.02.2012, 07:29:02 ) *
A powiedz co robi preg_match_all?


Mam kilka elementów i chce aby każdy był w tabeli dlatego używałem preg_match_all

Wiesz może jak to naprawić aby działało?(IMG:style_emoticons/default/smile.gif)
PS. to mi działa:

  1. preg_match_all("#<span class=\"data\">(.*)</span>#", $powiadomienia_tmp, $data);
  2. preg_match_all("#<input type=\"hidden\" name=\"notification_id\" value=\"(.*)\"/>#", $powiadomienia_tmp, $id);


tylko to nie działa:

  1. [php] preg_match_all("#<a href=\"/Profile/user_(.*).html\">(.*)</a>
  2. (.*) <a href=\"(.*)\">(.*)</a>#", $powiadomienia_tmp, $infos);
[/php]

Ten post edytował Saki 20.02.2012, 07:45:59
Go to the top of the page
+Quote Post

Posty w temacie


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: 16.10.2025 - 01:34