Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Filtr polskich znaków
Robert007
post
Post #1





Grupa: Zarejestrowani
Postów: 167
Pomógł: 2
Dołączył: 1.07.2009
Skąd: Poznań

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


Witam,

Mam problem z wyrażeniem regularnym w preg_match. Potrzebuje filtr który by przepuszczał tylko znaki 0-9 a-z A-Z oraz znaki polskie śćóę itd.
Zrobiłem to tak:

  1. if(preg_match('/^([a-z0-9]+)$/i', $tekst)) return true;


Ok to przepuszcza wyłącznie a-z 0-9 a jak zrobić jeszcze by działało na znaki polskie?

Ten post edytował Robert007 29.06.2011, 08:22:46
Go to the top of the page
+Quote Post
Magic WWW
post
Post #2





Grupa: Zarejestrowani
Postów: 123
Pomógł: 32
Dołączył: 9.09.2010
Skąd: Brzeg

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


  1. if(preg_match('#^[a-z0-9\p{L}]+$#ui', $tekst)) return true;


Pozdrawiam Dawid smile.gif
Go to the top of the page
+Quote Post
Robert007
post
Post #3





Grupa: Zarejestrowani
Postów: 167
Pomógł: 2
Dołączył: 1.07.2009
Skąd: Poznań

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


Nie przepuszcza mi "dfsdśfsd556" gdy dodałem 'ś' to już nie chce przepuścić.
Go to the top of the page
+Quote Post
cycofiasz
post
Post #4





Grupa: Zarejestrowani
Postów: 711
Pomógł: 127
Dołączył: 5.07.2008
Skąd: Łódź

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


Wstaw te litery po prostu po 0-9
Go to the top of the page
+Quote Post
Robert007
post
Post #5





Grupa: Zarejestrowani
Postów: 167
Pomógł: 2
Dołączył: 1.07.2009
Skąd: Poznań

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


To samo jest. Mam tak:
  1. if(preg_match('/^([A-Za-z0-9ąćęłńóśźżĄĆĘŁŃÓŚŹŻ]+)$/i', $tekst)) return true;
Go to the top of the page
+Quote Post
Magic WWW
post
Post #6





Grupa: Zarejestrowani
Postów: 123
Pomógł: 32
Dołączył: 9.09.2010
Skąd: Brzeg

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


Hmm to rozwiązanie co Ci podałem wyżej mam w CMS swoim i działa poprawnie. To musisz lecieć po schodkach.

  1. if(preg_match('#^[a-z0-9ąćęłńóśżźĄĆĘŁŃÓŚŻŹ]+$#i', $tekst)) echo 'ok';


Ten post edytował Magic WWW 29.06.2011, 08:44:32
Go to the top of the page
+Quote Post
Robert007
post
Post #7





Grupa: Zarejestrowani
Postów: 167
Pomógł: 2
Dołączył: 1.07.2009
Skąd: Poznań

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


Nadal nie przepuszcza. Dlaczego?
Go to the top of the page
+Quote Post
cycofiasz
post
Post #8





Grupa: Zarejestrowani
Postów: 711
Pomógł: 127
Dołączył: 5.07.2008
Skąd: Łódź

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


Być może strona kodowa dokumentu jest inna niż kodowanie zmiennej $tekst
Go to the top of the page
+Quote Post
Robert007
post
Post #9





Grupa: Zarejestrowani
Postów: 167
Pomógł: 2
Dołączył: 1.07.2009
Skąd: Poznań

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


Na Firefox działa a na google chrome nie. Jak ustawić kodowanie na chrome ?

Ten post edytował Robert007 29.06.2011, 09:13:17
Go to the top of the page
+Quote Post
piotr94
post
Post #10





Grupa: Zarejestrowani
Postów: 331
Pomógł: 30
Dołączył: 11.11.2008
Skąd: Kraków

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


1. plik musisz zakodować w kodowaniu UTF-8 - np. programem notepad++ Format>Konwertuj na UTF-8 bez BOM
2. poprawny header:
  1. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />


Ten post edytował piotr94 30.06.2011, 11:35:10


--------------------
http://www.piotr94.net21.pl/ - wykonanie stron i serwisów internetowych
Jeśli moje wypowiedzi były dla Ciebie pomocne, kliknij "Pomógł" i odwdzięcz się ;)
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: 20.08.2025 - 18:17