esc_sql() (funzione WordPress) restituisce, sotto forma di stringa o array, il valore sanitizzato di codice SQL (query).
tips&tricks
Questa funzione sanitizza tramite escape solo i valori da utilizzare nelle stringhe con virgolette nella query (ad es., campo_db='{$valore_sanitizzato}'); non viene effettuata la sanitizzazione di valori che non siano tra virgolette (ad es., ORDER BY {$valore_sanitizzato}) di talché questa funzione non spiega alcun effetto nei confronti di valori senza virgolette, come numeri, nomi di campi del database e keyword SQL
Questa funzione è superflua nei casi in cui la query SQL sia preparata tramite wpdb()
Sintassi
esc_sql($stringa)
| parametro | descrizione |
|---|---|
| $stringa | La stringa da processare |
Esempi
$valore_sanitizzato = esc_sql("'valore' OR 1=1; DROP TABLE tabella");
echo $query1 = "SELECT * FROM tabella WHERE campo_db = '$valore_sanitizzato'"; // CON VIRGOLETTE
echo $query2 = "SELECT * FROM tabella WHERE campo_db = $valore_sanitizzato"; // SENZA VIRGOLETTE
/* RISULTATO
[$query1] SELECT * FROM tabella WHERE campo_db = '\'valore\' OR 1=1; DROP TABLE tabella'
[$query2] SELECT * FROM tabella WHERE campo_db = \'valore\' OR 1=1; DROP TABLE tabella [!!!]
*/
Contenuti correlati
- CSS
- HTML
- JavaScript
- jQuery
- PHP
- SQL
- WORDPRESS
0 Comment