Stringhe e database

martedì 05 dicembre 2006 - 18.55

giggionline Profilo | Newbie

Salve,

avrei una domandina...abbastanza semplice credo...anzi..facciamo un paio di domandine :D

Allora:

1) Ho una textbox multiriga da cui dover attingere un testo da inserire in un campo memo per database acces. Voglio quindi prendere questo testo e formattarlo, modificare la stringa e inserirlo nel database. Mi si presentano tali problemi:

- Dovrei eliminare gli apostrofi (') poichè vanno in conflitto con la stringa sql
- Dovrei fare in modo che anche andando a capo nella textbox la stringa che andrà nel database segnali l'andata a capo

2) Se inserisco nella textbox caratteri come <a href........etc > mi segnala un errore di "contenuto pericoloso" e quindi un conseguente errore di runtime

Capisco che magari sono domandine sceme però sono alle prime armi, scusatemi :)

Grazie anticipatamente per la risposta.

Giorgio

alx_81 Profilo | Guru

>Salve,
Ciao!
>
>avrei una domandina...abbastanza semplice credo...anzi..facciamo
>un paio di domandine :D
>
>Allora:
>
>1) Ho una textbox multiriga da cui dover attingere un testo da
>inserire in un campo memo per database acces. Voglio quindi prendere
>questo testo e formattarlo, modificare la stringa e inserirlo
>nel database. Mi si presentano tali problemi:
>
>- Dovrei eliminare gli apostrofi (') poichè vanno in conflitto
>con la stringa sql

Qui basta fare una replace da codice del carattere ' con la '' (due apici, non le virgolette)..

>- Dovrei fare in modo che anche andando a capo nella textbox
>la stringa che andrà nel database segnali l'andata a capo

Devi fare la replace del carattere di "a capo" (dipende da che linguaggio utilizzi, in vb è VbCrLf) con l' "a capo" di access, che se non ricordo male è CHR(10) + CHR(13)

>
>2) Se inserisco nella textbox caratteri come <a href........etc
>> mi segnala un errore di "contenuto pericoloso" e quindi
>un conseguente errore di runtime

Devi impostare, nella direttiva @Page, in alto nel tuo aspx la proprietà ValidateRequest a False.. ma stai attento, perchè in questo modo permetti ai malintenzionati di inserire script pericolosi.. non è sicuro..
Seppure più pesante da implementare (anche se esistono script che ti possono aiutare), è meglio farsi un metalinguaggio.. Una sorta di imitazione all'html, ed, in fase di salvataggio, sostituire i mark creati da te con il corretto html..
>
>Capisco che magari sono domandine sceme però sono alle prime
>armi, scusatemi :)
>
>Grazie anticipatamente per la risposta.
Spero possa esserti stato di aiuto..
>
> Giorgio
>
>

Alx81 =)

http://blogs.dotnethell.it/suxstellino

giggionline Profilo | Newbie

Grazie mille alex, sei stato di grande aiuto.

Comunque ancora una domanida è...

la sintassi della replace... io ho provato a fare

dim strCorpo as string = tbCorpo.Text

strCorpo = strCorpo.Replace(','')
strCorpo = strCorpo.Replace(VbCrLf, Chr(10)+Chr(13))

ma mi da errore di compilazione già nel primo replace

comunque si, il linguaggio che utilizzo come puoi vedere è VB

Grazie tante

alx_81 Profilo | Guru

>Grazie mille alex, sei stato di grande aiuto.
sempre un piacere

>
>Comunque ancora una domanida è...
>la sintassi della replace... io ho provato a fare
>dim strCorpo as string = tbCorpo.Text
>
>strCorpo = strCorpo.Replace(','')
>strCorpo = strCorpo.Replace(VbCrLf, Chr(10)+Chr(13))

L'errore sta nei parametri.. mentre vbcrlf è una costante, gli altri sono valori stringa..

in poche parole viene così:

Dim strCorpo as String = tbCorpo.Text.Replace("'","''").Replace(VbCrLf,"Chr(10)")

ok?
e utilizza solo il chr(10), senza il chr(13)..
ciao!

>
>ma mi da errore di compilazione già nel primo replace
>
>comunque si, il linguaggio che utilizzo come puoi vedere è VB
>
>Grazie tante

Alx81 =)

http://blogs.dotnethell.it/suxstellino
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5