Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [php] wyrażenia regularne
bro_da
post
Post #1





Grupa: Zarejestrowani
Postów: 11
Pomógł: 0
Dołączył: 12.05.2006
Skąd: Bydgoszcz

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


witam

przeszukałem dokładnie forum (wyszukiwarka wywaliła mi 3 strony postów na ten temat), ale niestety nic z tego nie wykombinowałem, sporo też googlałem, więc prosze nie odsyłajcie mnie tam winksmiley.jpg

mam problem, którego nie mogę przeskoczyć od 2 dni,
chodzi o filtrowanie danych które wprowadza "użyszkodnik"

mamy kod w php:
  1. <?
  2. echo '---POCZATEK SKRYPTU---<br><br>';
  3.  
  4. if(ereg('[0-9A-Za-z]{1,20}', $_GET['zmienna']))
  5. {
  6.     echo 'zmienna przeszla test POMYSLNIE<br><br>';
  7.     echo $_GET['zmienna']. '<br><br>';
  8. }
  9. else
  10.     echo 'zmienna jest NIEPRAWIDLOWA<br><br>';
  11.  
  12. echo '---KONIEC---';
  13. ?>


i jeśli użytkownik wprowadzi np. taki skrypcik zamiast poprawnej nazwy zmiennej:
Kod
<script>alert('A ku ku!');</script>



to oczywiście wyświetli się okienko z komunikatem "A ku ku!"
próbowałem użyć:

  1. <?php
  2.  
  3. if(eregi('[[:alnum:]]{1,20}', $_GET['zmienna']))
  4.  
  5. ?>


też nie działa..

robie jakiś głupi błąd?

Ten post edytował bro_da 19.05.2006, 23:25:04
Go to the top of the page
+Quote Post
mdco
post
Post #2





Grupa: Zarejestrowani
Postów: 324
Pomógł: 5
Dołączył: 14.12.2004

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


Użyj takich znaczków na końcu i na początku wyrażenia (a co oznaczają zobacz w manualu Pattern Syntax
Kod
'^[0-9A-Za-z]{1,20}$'


Po zatym sprawdź czy twoja zmienna napewno zawiera tylko znaki z tego zbioru.


--------------------
zmoderowano - rozmiar
Go to the top of the page
+Quote Post
bro_da
post
Post #3





Grupa: Zarejestrowani
Postów: 11
Pomógł: 0
Dołączył: 12.05.2006
Skąd: Bydgoszcz

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


dzięki mdco smile.gif

wiem co oznaczają ^ i $ ale nawet nie przyszło mi do głowy użycie ich...
męczyłem problem kilka dni,
jeszcze raz wielkie dzięki smile.gif
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 21.08.2025 - 01:17