498 messaggi dal 19 ottobre 2005
Ciao a tutti
ho il eguente problema: ho un campo note che deve essere scritto in un database. sE questo campo contiene un apice, non viene eseguita la query.
Per superare il problema ho fatto in questo modo:
Session("note")=Trim(Server.HTMLEncode(Replace(Request("note"),"'","''")))
ma se prova ad inserire due apici ancora una volta la query non viene eseguita.
Come posso fare?
Geazie
27 messaggi dal 01 dicembre 2003
www.steweb.net
Ciao !

...metti semplicemente

note = trim(Replace(Request("note"),"'","''"))

prova ora.!

Steweb

www.steweb.net
575 messaggi dal 23 giugno 2003
www.padovaboy.it
Il trim lo devi fare sulla variabile che arriva quindi:
variabile = trim(request())
poi su questo devi moltiplicare gli apici
variabile = replace(variabile, "'", "''")
poi devi controllare anche gli altri caratteri di escape del tuo database , ad esempio mysql richiede lo sdoppiamento del carattere \
quindi
variabile = replace(variabile, "\", "\\")
Tra l'altro direi che sconsiglio di salvare il contenuto come htmlEncode, conviene di più codificarlo in uscita così ne puoi fare un uso migliore, avendo l'originale (anche se a livello di prestazioni sarebbe meglio farlo una sola volta...amen).

Poi consiglio di fare subito una funzione in un file include di help che si occupi di fare queste 2-3 operazioni così poi non te la devi smazzare più...sembra una banalità ma anch'io ho passato svariati mesi a mettere OGNI volta il replace...poi mi son detto "fermi tutti...che diamine sto facendo? :D)

www.padovaboy.it dal 2001 con furore :D

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.