Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Dziwny problem z preg_match
mefistofeles
post
Post #1





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

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


Mam taki kod:

  1. $result = mysql_query('SELECT * FROM tabela WHERE uzytkownik ="'.$uzytkownik.'" ORDER BY data DESC ')))
  2. {
  3. }
  4. while ($row = mysql_fetch_array($result))
  5. {
  6. $exp = '/^http/';
  7. if (preg_match($exp, $row['adres'])) { echo 'tak';
  8. }
  9.  
  10. else { echo 'nie';}
  11. }


Mimo iż w $row['adres'] są linki z http to jednak ciągle jakoś nie chcę mi to wyrażenie tego
wyłapać chociaż powinno, bo gdy na sztywno przypisze do zmiennej linka tak jak tutaj:


  1. $result = mysql_query('SELECT * FROM tabela WHERE uzytkownik ="'.$uzytkownik.'" ORDER BY data DESC ')))
  2. {
  3. }
  4. while ($row = mysql_fetch_array($result))
  5. {
  6.  
  7. $row['adres'] = 'http://www.wp.pl/1sdEWG04rArK/';
  8.  
  9. $exp = '/^http/';
  10. if (preg_match($exp, $row['adres'])) { echo 'tak';
  11. }
  12.  
  13. else { echo 'nie';}
  14. }


To już jest tak jak powinno i pojawia się napis 'tak'
Dlaczego w takim razie nie przechodzi to w pętli pomimo tego że w zmiennej na pewno są linki z http (IMG:style_emoticons/default/questionmark.gif) (IMG:style_emoticons/default/questionmark.gif) ?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 3)
Zosiek
post
Post #2





Grupa: Zarejestrowani
Postów: 140
Pomógł: 22
Dołączył: 1.05.2009
Skąd: Będzin

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


A wyświetl sobie po pobraniu z bazy $row['adres']
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----


No przecież wyświetliłem.
Napisałem, że w zmiennej jest taki sam link a jednak coś nie przechodzi...
Go to the top of the page
+Quote Post
Zosiek
post
Post #4





Grupa: Zarejestrowani
Postów: 140
Pomógł: 22
Dołączył: 1.05.2009
Skąd: Będzin

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


1. Zamykasz połączenie z bazą za szybko.
2. Masz tam błędy typu:
- brak ;
- za dużo )))))
- niepotrzebnye {}

  1. $result = mysql_query('SELECT * FROM tabela WHERE uzytkownik ="'.$uzytkownik.'" ORDER BY data DESC ')
));
{
exit(mysql_error());
}
  1. while ($row = mysql_fetch_array($result))
  2. {
  3. $exp = '/^http/';
  4. if (preg_match($exp, $row['adres'])) { echo 'tak';
  5. }
  6.  
  7. else { echo 'nie';}
  8. }


Więc zmiena $row['adres'] jest pusta (IMG:style_emoticons/default/smile.gif)

Ten post edytował Zosiek 14.10.2009, 15:30:47
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: 4.10.2025 - 07:50