![]() |
![]() |
--czytacz-- |
![]()
Post
#1
|
Goście ![]() |
Witam,
Chcę w formularzach uniemożliwić wprowadzanie 4 znaków: ' " < > Oczywiście w temacie bezpieczeństwa. Zamiana znaków na encje mnie nie urządza, urywanie ich i wprowadzanie reszty do bazy również. Chcę aby w przypadku wystąpienia takiego znaku wyświetlił mi się komunikat, że użyto niedozwolonych znaków. Czy jest na to jakaś inna metoda niż "ręczne" wklepanie procedury typu: - wybierz string - szukaj znaków - zwróć błąd? JS odpada, chcę zabezpieczyć serwis od strony serwera. Klient może sobie wyłączyć obsługę JS i całe zabezpieczenie bierze w łeb. |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 1 798 Pomógł: 307 Dołączył: 13.05.2009 Skąd: Gubin/Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Bardzo proste wyrażenie załatwić może całą sprawę:
Kod <?php $dane_z_formularza = 'abcdef "< >"'; if(preg_match('#^[^><"]+$#is', $dane_z_formularza)) { echo 'poprwne dane'; } else { echo 'błędne dane'; } w nawiasie kwadratowym zaraz po daszku "^" podajesz znaki które mają nie wsytąpić w ciągu, w przypadku wystąpienia wyrażenie nie spełni wymagań i preg_match zwróci 0. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 4.10.2025 - 03:37 |