Newsgroup: it.comp.www.asp
Titolo: Apostrofi che problema!

ciao!
vorrei sapere per chi di voi č incappato in questo problema come lo ha
risolto.
parlo degli apostrofi.
in un db ho dei campi di testo che rapresentano le categorie dei
prodotti che possono contenere apostrofi.
il problema sorge quando la categoria deve essere passata come
parametro nella stringa dell'indirizzo.
lě, la parola mi viene tagliata al carattere prima dell'apostrofo, non
trovando quindi, piů riferimenti nel db.
ho provato un pň in tutti modi, magari tranne quello giusto.
ho provato:
categoria=replace(categoria, " ' ", server.urlencode(" ' "))
il che sembrava giusto, perchč convertiva l' " ' " con %27
e poi ho messo nell'altra pagina, leggendo il parametro nella
querystring:
categoria=replace(categoria, "%27", " ' ")
oppure
categoria=replace(categoria, server.urlencode(" ' "), " ' ")
oppure niente.
ma in ogni caso non va bene, perchč non riesce a ricomporre il nome
originario della categoria.
voi come fareste?
inoltre se invio testi via mail, l'apostrofo (') mi viene convertito
in doppi apici (").
Al che anche lě le ho provate un pň tutte, da:
frase=replace(frase, " "" ", " ' ")
a:
frase=replace(frase, " ' " , "&#146;")
frase=replace(frase, " "" " , "&#146;")
ma al massimo mi scrive l&#146;ombra
o l"ombra
si tratta proprio di doppi apici (") e non 2 apostrofi ('')
grazie
Ciao.
Silvia
--
http://webland.panservice.it/persone/silvia/
...everyone's invited! :-)

Cambiati in nome che non è affatto cool (e manda in errore alcuni programmi)
e cambia, prima di fare le query, ogni apice singolo con 2 apici singoli.
insert into tabella values ('qui c'e' l'apostrofo') ==>
==> insert into tabella values ('qui c''e'' l''apostrofo')
(mi pare sia documentata...)
--
Gian Uberto| main(){printf(&unix["\021%six\012\0"],(unix)["have"]+"fun"-0x60);}
Lauri      |                        David Korn, 1987 ioccc best one liner 
(aka saint)|-------------------------------------------------------------------
em@ail: 
sa...@eng.it
 ( vedere X-nospam nello header - see X-nospam in header )

 ==> insert into tabella values ('qui c''e'' l''apostrofo')
testo = "qui c'e' l'apostrofo"
testo = Replace(testo, "'", "''")
ciao
--
Kappa
ka...@webngo.net
www.webngo.net
www.filmscoop.it

stringa = Replace(stringa, "'", "''")
--
Ciao,
   Filippo Di Blasi 
fil...@puntoinformatico.it
   Webmaster(at) 
www.puntoinformatico.it
 <-- NEW!

 prodotti che possono contenere apostrofi.
Ci sono anche le FAQ! :)
http://www.aspitalia.com/newsgroup/icwa.asp?ID=42

stringa = Replace(stringa, "'", "''")
chiedo scusa se insisto, almeno nel caso in cui la stringa viene
inserita nel corpo di email usando questo metodo passo da:
l"importo
a
l""importo


 l"importo a l""importo
Devi decidere: o utilizzi come separatore di stringhe nel sql l'apice
singolo (preferibile) o il doppio.
Se utilizzi il singolo, tutti i problemi li risolvi scrivendo:
    sSql =  "SELECT * " & _
                "FROM tabella " & _
                "WHERE stringa='" & Replace(tuaStringa, "'", "''") & "';"
--
Ciao,
   Filippo Di Blasi 
fil...@puntoinformatico.it
   Webmaster(at) 
www.puntoinformatico.it
 <--- NEW!


ho scoperto l'arcana: era l'oggetto dkqmail utilizzato al posto di cdonts
che ha problemi con gli apostrofi.... :)