Mysql
 sql >> Database >  >> RDS >> Mysql

funzione per disinfettare l'input nel database Mysql

htmlentities() non è necessario per rendere i dati sicuri per SQL. Viene utilizzato durante l'eco dei valori dei dati nell'output HTML, per evitare vulnerabilità XSS. Anche questo è un importante problema di sicurezza di cui devi essere consapevole, ma non è correlato a SQL.

addlashes() è ridondante con mysql_real_escape_string. Ti ritroverai con barre inverse letterali nelle tue stringhe nel database.

Non usare virgolette magiche. Questa funzione è stata deprecata per molti anni. Non distribuire codice PHP in un ambiente in cui le virgolette magiche sono abilitate. Se è abilitato, disattivalo. Se si tratta di un ambiente ospitato e non disattivano le virgolette magiche, procurati un nuovo provider di hosting.

Non utilizzare ext/mysql . Non supporta parametri di query, transazioni o utilizzo OO.

Aggiornamento:ext/mysql è stato deprecato in PHP 5.5.0 (2013-06-20) e rimosso in PHP 7.0.0 (2015-12-03). Non puoi proprio usarlo.

Usa PDO e rendi le tue query più sicure utilizzando query preparate .

Per maggiori dettagli sulla scrittura di SQL sicuro, leggi la mia presentazione SQL Injection Myths e Errori .