Joomla.it Forum
Non solo Joomla... => Sviluppo => : salsero72 02 Jan 2010, 17:22:31
-
Ciao,
come gestisce Joomla il problema delle virgolette nei form?
E' corretto "escapare" i dati con htmlspecialchars o c'è un metodo preposto da una qualche clase joomla?
Grazie
Nicola.
-
dipende da che fine fanno i dati.
per l'inserimento in un db credo si usi il metodo quote()
M.
-
ovviamente dipende da ciò che vuoi fare.
se vuoi prendere i dati inviati da una form ed inserirli nel db, dovresti
1.
usare il metodo statico getVar della classe JRequest per pulire l'input da html, js (se non voluti) od altri tentativi di hack (vedi http://api.joomla.org/Joomla-Framework/Environment/JRequest.html)
2.
usare il metodo store della classe JTable per inserire i dati nel db (richiede la scrittura di una classe derivata che sia il model della tabella cui sono destinati i dati).
in questo modo tutti gli escaping ed i controlli di sicurezza necessari sono gestiti dal framework
il tutto non è cosa non difficile ma non proprio velocissima :(
ciao,
marco
-
Grazie Ragazzi,
mi sa che mi sono spiegato male.
Faccio esattamente come dice MMeloni per il salvataggio.
Io però mi riferivo non al salvataggio/analisi_input, ma all'output a video quando presento il form all'utente con dati estratti dal db.
Se ad esempio ho un record che parla di titoli di libri e questo record contiene
-I classici della "letteratura" comica-
Nel form, quando lo presento all'utente "Titolo: [ ]"
se faccio un echo normalissimo, non si vede più nulla dopo -I classici della - perchè le virgolette interferiscono.
Il problema è prettamente di php+html.
Io ora uso htmlspecialchars, ma volevo sapere se cè qualche funzione già propria delle api di joomla (che lavora meglio)
-
da re degli animali sono diventato un ortaggio MMeloni ;)
allora è giusto come fai tu.
ciao, marco
-
da re degli animali sono diventato un ortaggio MMeloni ;)
Ops. Scusa che nervoso quando ho queste distrazioni.
MLeoni.
Ciao e grazie ancora.