Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] strlen() nie działa jak należy
Forum PHP.pl > Forum > Przedszkole
d.stp
1. Mam takie coś:
  1. if (strlen($_POST['username'] < 3) or strlen($_POST['username'] > 24) {
  2. $msg = 'Nazwa użytkownika nie może być mniejsza niż 3 znaki i większa niż 24 znaków!<br />';
  3. }

I wpisuje w formularzu jakąś nazwę, która ma np. 8 znaków i wyrzuca mi błąd co jest w $msg...

A jak wpiszę np. 111 (lub inne cyfry_ to już działa... dlaczego tak się dzieje?

2. Czy zabezpieczenie w stylu:

  1. strip_tags(htmlspecialchars($zmienna_z_formularza))


Uchroni mnie przed atakami xss i innymi?
redeemer
Przypatrz się dokładnie jaki argument przekazujesz do funkcji strlen.

Nie ma sensu dawać strip_tags po wykonaniu htmlspecialchars, bo < i > zamienią się na &lt; i &gt;
d.stp
Faktycznie, nie zauważyłem tego smile.gif
viking
I zastanów się też czy nie potrzebujesz mb_strlen
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.