- Home
- Categorie
- Coding e Sistemistica
- MYSQL e altri Database
- MySQL injection: si dovrebbe fare questo tipo di controllo?
-
MySQL injection: si dovrebbe fare questo tipo di controllo?
Immaginiamo di avere un form con un menu a tendina.
In questo menu ci sono delle opzioni che l'utente può scegliere.
Quando ne seleziona una si viene rimandati ad una pagina che contiene la scelta fatta dall'utente col metodo POST.Questo dato serve ad una query.
E' importante fare un controllo dei caratteri per evitare il mySQL injection anche in questo caso o è eccessivo?
Insomma, per un malintenzionato è possibile sfruttare le variabili "prestabilite" passate con POST?
Aspetto vostri suggerimenti!
-
Ciao Protone86,
si è necessario fare un controllo anche in questo caso. Non vi è alcuna difficoltà, da parte di un malintenzionato, nel modificare i dati inviati mediante il form.
-
E allora come faccio a controllare i dati provenienti da un form da cui scegliere una città?
Ci sono città straniere che contengono anche apostrofi e altri caratteri strani...
-
La stessa funzione che usi dalle altre parti, che poi suppongo tu utilizzi gli ID per non creare ridondanza nel database.
-
@Thedarkita said:
La stessa funzione che usi dalle altre parti, che poi suppongo tu utilizzi gli ID per non creare ridondanza nel database.
Di che ridondanza parli?? :():
Non posso usare la stessa funzione che uso in altre parti del sito perchè il tipo di dati da controllare è molto diverso.
-
Se non spieghi esattamente cosa stai facendo è difficile darti una risposta precisa per il tuo caso.
-
Beh, come ti ho detto mostro una lista all'utente contenente delle città di tutto il mondo.
I nomi di queste città contengono caratteri di tutti i tipi compresi gli apostrofi quindi come faccio a controllare questo tipo di dati?
-
Se devi inserire nel database il nome, è sufficiente usare mysql_real_escape_string come per gli altri casi.
-
Oltre che scrivere devo anche leggere lo stesso valore dal database.
Dici che basta la funzione che mi hai suggerito?
-
Scusa ma se il valore è nel database, invece di reinserirlo nuovamente come nome che crei pure ridondanza, non è più corretto inserire l'ID di riferimento alla tabella in cui hai i valori?
-
No, per ragioni che non ti sto quì a spiegare (perchè troppo lunghe) mi conviene scrivere il nome sul database
Quindi? Pensi possa bastare quella funzione?
-
Si, è sufficiente utilizzare quella funzione.
-
Ok, grazie mille