home  comanda on-line  oferta webhosting  oferta reseller  asistenta / tichete  login  contact 
SUPORT ONLINE
Tichet asistenta
Asistenta - cuprins
Primii pasi
Transfer domenii
Configurare E-Mail
Intrebari frecvente
Abuzuri
Descriere facilitati

Validarea datelor introduse de vizitatori

Descriere generală

Validarea datelor introduse de către vizitatorii sitului dv. este o necesitate atat pentru a avea datele corecte in baza dv. de date cat si pentru a va asigura ca situl dv. nu va fi abuzat. Nevalidarea corecta poate avea ca efect direct distrugerea tuturor datelor sitului dv. cat si a bazei de date.

Exemple de folosire greșită

Efecte negative

Prin nevalidarea corectă practic oferiți oricui accesul nelimitat la situl dv., la bazele de date folosite cat si la resursele serverului alocate contului dv.

Soluție

Soluția general valabila este validarea explicita a tuturor datelor primite de la vizitatorii sitului dv. fie ca sunt primite ca și câmpuri ale unui formular, valori transmise prin URL, valori extrase din baza de date și nevalidate la introducere.

Validare _GET, _POST

Verificarea variabilelor _GET și _POST este absolut necesară pentru a ne asigura că variabilele conținute se află în limitele impuse. De exemplu, dacă colectăm un numar de la variabila _GET, urmatoarea linie ne poate asigura că acesta este un întreg:

  $id = (int)$_GET['id'];

Verificarea string-urilor este ceva mai complicată, de obicei necesită „regular expressions“. De exemplu, următorul cod garantează că string-ul este un nume de fisier care începe cu litere mici și se termină cu “.html“:

if ( ereg( "^[a-z]+\.html$", $id ) )
{ 
  echo "OK!"; 
}
else
{ 
  die( "Nume invalid." ); 
} 

Validarea variabilelor trimise prin _POST se pot valida asemanător.

Alte tipuri de validare

  • În cazul în care la un anumit moment aţi introdus o verificare/validare mai atenta a datelor introduse de utilizatori, este posibil ca în baza de date să existe incă intrări nevalidate. Soluţiile variază intre:
    • trataţi toate intrările din baza de date prin acelaşi tip de validare, urmand re-introducerea lor în formă corectată în baza de date;
    • trataţi orice afişare/procesare a datelor din baza de date prin noul tip de validare.
 

    ROHOST® este un serviciu al firmei ROSPOT S.R.L.
© 2000-2008 ROSPOT S.R.L.