Mysqli_real_escape_string funcție în PHP

mysqli_real_escape_string () - care scapă caractere speciale într-un șir de caractere care este utilizat în SQL-interogare, prinmimaya în considerare compusul de codificare, astfel încât rezultatul poate fi utilizat în siguranță în SQL interogare în mysqli_query funcția ().

mysqli_real_escape_string (string identificator MySQL server)

Luați în considerare exemplul de utilizare a acestei funcții. În primul rând, în exemplu, creați un tabel în „tester“, atunci vom adauga la datele.

Dar ce se întâmplă dacă utilizatorul prezintă următoarele date:

În acest caz, se produce un accident atunci când adăugați o, mysqli_error () funcția de utilizator va afișa textul de eroare: „Aveți o eroare în sintaxa SQL.“, Care, în principiu, nu sunt critice pentru sistem ca întreg.

Acum, ia în considerare o situație în care vom actualiza informațiile SQL-interogare UPDATE.

Ia același cod, doar o mică schimbare ea.

Acest cod va funcționa atâta timp cât utilizatorul nu transmite date:

În acest caz, vom obține o interogare SQL:

Utilizatorii UPDATE SET parola = '' #

Acum vom rezolva problema folosind funcția mysqli_real_escape_string ().

Desigur, algoritmul acestui cod nu este perfect, dar a fost scris numai în scopul de a demonstra necesitatea funcției mysql_real_escape_string ().

Date EXEMPLUL neutralizare pentru MySQL

PHP are o proprietate built-in de „citate magice“ care se scurg în mod automat toate ghilimele simple și duble, decât creează probleme. Unii programatori dezactiva această funcție pentru a insera codul lor, care este responsabil pentru securitatea. Bazați-vă pe proprietatea „citate magice“ nu este în valoare de ea.

Proprietate „citate magice“ nu este recomandată, deoarece PHP 5.3.0, PHP 6.0.0 și de la ea, în general, a fost eliminată.

Aici este soluția corectă pentru eliminarea datelor introduse de către utilizator este acceptabil pentru MySQL:

get_magic_quotes_gpc Funcția () - devine setarea curentă de configurare activă a „magic“ citate GPC. Returnează, în cazul în care proprietatea este „citate magice“ adevărat este activ.

Dacă funcția „citate magice“ este activată, orice adăugat slash pentru a fi eliminate, în caz contrar funcția mysql_real_escape_string () se poate dezactiva unele personaje de două ori, ceea ce face liniile nu sunt potrivite pentru lucrările ulterioare.

stripslashes () Funcția - șterge ecranare de caractere.

Iată un alt exemplu:

Apoi se adaugă htmlspecialchars funcția (). care convertește caractere speciale în entități HTML.

In HTML, unele caractere au o semnificație deosebită pentru păstrarea valorilor lor trebuie să fie convertite în entități HTML. Această funcție returnează un șir de caractere peste care a realizat unele dintre aceste transformări. Aceste schimbări suficiente pentru cele mai multe sarcini de programare web. Dacă aveți nevoie pentru a converti toate efectul posibil, utilizați htmlentities ().

html_entity_decode - dimpotrivă, convertește toate HTML-entitățile la caracterele lor aplicabile, este opusul htmlentities () funcția.

articole similare