Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Znaki diakrytyczne
agentmullder
post
Post #1





Grupa: Zarejestrowani
Postów: 120
Pomógł: 0
Dołączył: 1.03.2010

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


Zwracam sie z prosba o podanie sposobu rozwiazania mego problemu, ktory wyglada nastepujaco:

Jest sobie skrypt rejestracji na stronie www. Uzytkownik podaje login oraz haslo w celu zarejestrowania konta. Formularz jednak ma ograniczona ilosc znakow w hasle do 10. Uzytkownik wpisujac przykladowo łóśęźą napotyka walidacje, ktora mowi mu, ze podaje za dlugie haslo. Baza jest kodowana w utf8 strona tak samo. Wiem, ze glowny problem do kodowanie polskich znakow diakrytycznych w roznych standardach. Np takie ł=#C5.

Co moglbym zrobic w skrypcie rejestracji/logowania, aby polskie znaki byly zliczane jako 1 znak?

Prosze nie zamykac nie przyjzawszy sie dokladnie mojemu problemowi. Tak wiem temat wielokrotnie walkowany - tak czytalem je, ale nie znalazlem podobnego problemu, chyba ze rozwiazanie jest banalne a ja po prostu go nie zauwazylem.

Ten post edytował agentmullder 16.03.2010, 15:56:59
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
DiH
post
Post #2





Grupa: Zarejestrowani
Postów: 251
Pomógł: 34
Dołączył: 7.01.2010

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


Musiałbyś najpierw sprawdzić dlaczego taki błąd występuje. Być może nie chodzi o to, że polskie znaki diakrytyczyne są zamieniane na jakieś kilku znakowe twory, a o to, że funkcja sprawdzają ma po prostu taki zakres akceptowania znaków [a-zA-Z]. Jeżeli tak jest to dodaj wszystkie tam wszystkie "nasze" znaki: [a-zA-ZąĄęĘ] etc.

Daj znać czy pomogło.
Pozdrawiam.
Go to the top of the page
+Quote Post
agentmullder
post
Post #3





Grupa: Zarejestrowani
Postów: 120
Pomógł: 0
Dołączył: 1.03.2010

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


Cytat(DiH @ 16.03.2010, 17:28:54 ) *
Musiałbyś najpierw sprawdzić dlaczego taki błąd występuje. Być może nie chodzi o to, że polskie znaki diakrytyczyne są zamieniane na jakieś kilku znakowe twory, a o to, że funkcja sprawdzają ma po prostu taki zakres akceptowania znaków [a-zA-Z]. Jeżeli tak jest to dodaj wszystkie tam wszystkie "nasze" znaki: [a-zA-ZąĄęĘ] etc.

Daj znać czy pomogło.
Pozdrawiam.



  1. !preg_match('/^[a-zA-ZęóąśłżźćńĘÓĄŚŁŻŹĆŃ_-]{2,25}$/', $imie)


Zrobilem tak jak zaleciles. Ale nadal to samo, polskie znaki traktowane sa dwubitowo.


EDIT:
Dziala (IMG:style_emoticons/default/smile.gif) DiH masz plusa (IMG:style_emoticons/default/smile.gif)

Problem lezal w braku 'u' w walidacji:

  1. !preg_match('/^[a-zA-ZęóąśłżźćńĘÓĄŚŁŻŹĆŃ_-]{2,25}$/u', $imie)


Ten post edytował agentmullder 16.03.2010, 19:22:29
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: 13.10.2025 - 14:55