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

Stringa con codifica Base64 per una semplice iniezione di sql

A causa della natura della funzione base64_encode() (fai in modo che i dati binari sopravvivano al trasporto attraverso livelli di trasporto che non sono puliti a 8 bit) non devi sfuggire a nulla!

I caratteri restituiti sono [0-9a-zA-Z/]

Ma ti consiglio vivamente di usare la dichiarazione preparata (con mysqli o PDO). Sono un pochino più lenti ma non cambierai la logica di sanificazione ogni volta che hai a che fare con una struttura di tabella.

E poi, cosa non meno importante, magari in futuro dovrai indicizzare i dati sulla tua tabella (magari per la ricerca con LIKE o FULLSEARCH).

Il tuo secondo esempio è corretto (lega TUTTI i tuoi parametri)