Escaping di stringhe nel livello del database

1

Le funzioni di escaping (ad esempio mysql_real_esacpe_string) possono essere spostate verso il basso nel livello del database dove faremo il loop di tutti i parametri passati per tutte le query e sfuggiranno tutte le stringhe. Sarebbe un buon design?

    
posta Imran Omar Bukhsh 17.04.2011 - 10:06
fonte

3 risposte

5

Nella maggior parte delle altre lingue utilizzeresti "istruzioni preparate" per questo in cui separi l'SQL dai valori.

PHP non fornisce la stessa funzione?

    
risposta data 17.04.2011 - 10:13
fonte
2

PHP fornisce una buona emulazione di istruzioni preparate attraverso la libreria PDO integrata. Usalo per SQL se puoi. Le funzioni mysql_ * sono veloci, sporche e legacy.

    
risposta data 17.04.2011 - 12:07
fonte
0

Non sarebbe un buon design.

Utilizza una delle librerie di escape comuni per sfuggire ai parametri.

Il roll out è soggetto a errori, specialmente nel database (dove potrebbe essere sovvertito da un parametro scritto in modo intelligente).

Inoltre, SQL è piuttosto scadente nella manipolazione delle stringhe, quindi anche una scelta sbagliata su questo punto.

    
risposta data 17.04.2011 - 10:10
fonte

Leggi altre domande sui tag