SQL Injection è un hack che riesce a giocare con il nostro database tramite form. Diciamo che l'hacker inganna il file le forme in modo che eseguano azioni impreviste nel nostro database. Con questo metodo puoi eliminare completamente il nostro database, assegnare i diritti di amministratore a un determinato utente o rimuovere l'accesso al nostro sito web. Inoltre, se la nostra pagina è un negozio, l'hacker potrebbe avere accesso a indirizzi e conti bancari, qualcosa di veramente pericoloso.
Esistono molti modi ingegnosi per evitare la temuta SQL Injection, tuttavia finora esiste un metodo infallibile. Questa è una funzione PHP relativamente nuova che estrae da una stringa di testo qualsiasi funzione esistente in MYSQL, cioè, prima di inviare i dati del modulo al database, controlla che non ci sia alcuna funzione MYSQL in quei dati, il che rende questo funzione infallibile per il momento.
La funzione da utilizzare è:
mysql_real_escape_string();
Per usarlo, semplicemente inserire la stringa di testo da analizzare tra parentesi. Ad esempio:
$_POST['usuario']=mysql_real_escape_string($_POST['usuario']); $_POST['nombre']=mysql_real_escape_string($_POST['nombre']); $_POST['apellido']=mysql_real_escape_string($_POST['apellido']); $_POST['email']=mysql_real_escape_string($_POST['email']);
Per saperne di più | Zebra Form: libreria PHP speciale per i moduli