Avatar billede kourosh Nybegynder
12. august 2002 - 03:46 Der er 5 kommentarer og
2 løsninger

encoding html

Jeg har en form i en html side og når man submitter til en asp side, der skal gemmes data i en database.
jeg har et problem med noget charecters som ' og , .
hvordan kan jeg encode. jeg har prøvet med
HTMLEncode(), men de encodes ikke. Hvad skal jeg gøre?

mvh
Avatar billede medions Nybegynder
12. august 2002 - 07:52 #1
Du kunne evt. gøre sådan her:

strSQL = "INSERT INTO tabel (kolonne1,kolonne2) VALUES (" & Replace(Request.Form("dininputbox1"),"'","''") & "," & Request.Form("dininputbox2") & ")

Her der replacer du én ' til to ''!

//>Rune
Avatar billede medions Nybegynder
12. august 2002 - 07:55 #2
Her har du den i en funktion, så det er lidt mere overskueligt:

    Function unQuote(strTekst)
        strTekst = Trim(strTekst)
        unQuote = Replace(strTekst,"'","''")
    End Function


strSQL = "INSERT INTO tabel (kolonne1,kolonne2) VALUES (" & unQuote(Request.Form("dininputbox1")) & "," & unQuote(Request.Form("Dininputbox2")) & ")"

//>Rune
Avatar billede kourosh Nybegynder
12. august 2002 - 12:32 #3
jeg må ikke ændre i teksten. ' må ikke bliver ''. der findes en server methode, tror jeg, som kan ændre disse.
jeg har selv lavet en funktion som
function removeSign(stringInput)
stringInput = Replace(stringInput, "'", "’")
removeSign = stringInput
End Function
Avatar billede oasen Nybegynder
12. august 2002 - 15:26 #4
Når ' ændres til '', indsættes kun én ' i databasen. Og når du henter fra databasen, udskrives der ligeledes kun én '.
Server.HTMLencode skal du ikke bruge, når du indsætter i basen - kun når du udskriver noget som HTML. F.eks.:

Server.HTMLencode("æ, ø og å er danske tegn")
Server.HTMLencode(rs("dit_felt"))

Så det eneste, du skal foretage dig, inden du sætter noget ind i basen er som sagt ovenfor at erstatte '-tegnet:

Replace(din_streng, "'", "''")
Avatar billede medions Nybegynder
12. august 2002 - 15:44 #5
Som også oasen siger, biver to ' til én ' inde i databasen, så der skulle ikke være noget problem der!

//>Rune
Avatar billede oasen Nybegynder
12. august 2002 - 15:58 #6
Det er en dum idé at erstatte ' med ’ af følgende grunde:

1) Hvis du skal bruge indholdet af databasen i en anden henseende end web, skal du til at konvertere tilbage til ' først.

2) Hvis du udskriver en del af en streng hentet fra basen, kan dette komme til at se uheldigt ud:

streng = "that's the way it is"
Replace(Streng, "'", "’") = "that&rsquos the way it is"

Dette vil blive udskrevet korrekt, men nedenstående vil ikke:

Left(Streng, 8) = "that&rsq"
Avatar billede medions Nybegynder
30. august 2002 - 07:36 #7
Thx 4 Poinz

//>Rune
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester