![]() |
![]() |
--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: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Cytat Czy jest na to jakaś inna metoda niż "ręczne" wklepanie procedury typu: To tak jakbyś zapytał: czy można inaczej ruszyć samochodem niż- wybierz string - szukaj znaków - zwróć błąd? - włożyć kluczyk - przekręcic - wrzucic bieg i odjechać Nie, nie ma innej metody ![]() -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 1 195 Pomógł: 109 Dołączył: 3.11.2011 Ostrzeżenie: (10%) ![]() ![]() |
Można by użyć wyrażeń regularnych do filtrowania danych wejściowych z inputów.
|
|
|
![]()
Post
#4
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Niktoś ale to ni mniej ni więcej jest wymieniony podpunkt "- szukaj znaków", który autorowi się przecież nie podoba
![]() -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 1 195 Pomógł: 109 Dołączył: 3.11.2011 Ostrzeżenie: (10%) ![]() ![]() |
Faktycznie.Ech-zmień Mu układ klawiatury ,może się nie połapie gdzie jest <,lub>,',"-zawsze to jakiś sposób
![]() |
|
|
--czytacz-- |
![]()
Post
#6
|
Goście ![]() |
od razu tak szydzić z przedszkolaka...
![]() Bardziej chodziło mi o to czy może jest jakaś gotowa funkcja, w podobie do htmlspecialchars, która już ma wszystko przygotowane. Nie lubię wynajdywać koła od nowa. |
|
|
![]()
Post
#7
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
A kto tu szydzi? Zadałeś pytanie to ci grzecznie wyjaśniono co i jak
![]() Nie ma funkcji, która robi te trzy rzeczy na raz. Do szukania możesz użyć wyrażeń regularnych jak wspomniał Niktoś -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 1 195 Pomógł: 109 Dołączył: 3.11.2011 Ostrzeżenie: (10%) ![]() ![]() |
Podobną funkcją do htmlspecialchars jest htmlentities,ale chyba także Cię to nie zainteresuje.Niestety nie ma tak dobrze,trzeba samemu troszeczkę się pomęczyć,żeby zabezpieczyć formularz.
Ten post edytował Niktoś 16.11.2011, 21:09:05 |
|
|
--czytacz-- |
![]()
Post
#9
|
Goście ![]() |
Spoko. Dzięki za info, biorę się do roboty bo czasu szkoda
![]() |
|
|
![]()
Post
#10
|
|
![]() 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. |
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 590 Pomógł: 107 Dołączył: 25.10.2011 Ostrzeżenie: (0%) ![]() ![]() |
To tak jakbyś zapytał: czy można inaczej ruszyć samochodem niż - włożyć kluczyk - przekręcic - wrzucic bieg i odjechać Nie, nie ma innej metody ![]() Był kiedyś (i czasami można na drodze jeszcze spotkać) taki wynalazek, jak Polski Fiat 126p. Potocznie zwany "maluchem". Odpalałem go kijem. Owszem, zdaję sobie sprawę, że wielu nie uznaje tego czterokołowca jako samochód, ale jednak maluch był samochodem, bo aby nim kierować, potrzebne było prawo jazdy ![]() P.S. Przepraszam za offtopic ![]() |
|
|
![]() ![]() |
![]() |
Aktualny czas: 20.08.2025 - 09:56 |