![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 1 884 Pomógł: 231 Dołączył: 20.03.2005 Skąd: Będzin Ostrzeżenie: (0%) ![]() ![]() |
Witam,
Naszukałem się trochę, ale nigdzie nie dostałem jednoznacznej odpowiedzi. Chcialbym się dowiedzieć jak bez żadnych kłopotów wprowadzać do bazy danych takie rzeczy jak nazwy miast, imiona, nazwiska które zawierają oczywiście znaki diaktryczne, a że mój kłopot nie zamyka się na języku polskim, to dlatego pytam jak zrobić bezpieczne sprawdzenie takich nazw ? Do tej pory ten problem rozwiązałem stosując znaki kilku krajów, ale nie wydaje mi sie to eleganckie w przypadku kiedy na świecie jest więcej języków, szczególnie miasta mają różną pisownie. Dodatkowo chciałbym taki kod zabezpieczyć przed SQL Injection aby nie były wpisane znaki takie jak /* */ czy litery i znaki zapisane szestnastkowo. :Edit: Poprawiłem trochę temat, aby dawał więcej informacji o problemie. Ten post edytował Tomplus 31.03.2011, 10:47:07 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 1 884 Pomógł: 231 Dołączył: 20.03.2005 Skąd: Będzin Ostrzeżenie: (0%) ![]() ![]() |
@Crozin
W koncu sam wymyśliłem zapytanie i zastosowałem bez /u Szukałem w manualu dla PCRE na php.net ale nie znalazłem opisu flag na koncu wyrażenia. Czy podpowiesz mi adres strony w ktorym jest więcej opisów flag aby się doinformować na ten temat ? bo wiem że jest jeszcze /i i chyba /d ale opisu tego nie widziałem. Jednakże kod wygląda po zastosowaniu ^ i $ w ten sposób: Kod if (preg_match("/^([a-ż.-\s\pL]){4,36}$/", $miasto)) {} Dlatego teraz nazwy są akceptowane takie jak trzeba nie ważne czy to Będzin, Królewska Wola czy München. jak dodam liczbę 2 lub jakies liczby to przestaje akceptować, jak również nie działa przy zastosowaniu obcych znaków z wyjątkiem KROPKI oraz myślnika, bo czasami zdarzają się podwójne nazwy miast. np. Bielsko-Biała. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 17.10.2025 - 02:52 |