07. juli 2002 - 10:51Der er
35 kommentarer og 3 løsninger
Problematiske specialtegn
Hej
Mit spørgsmål går ud på, hvordan koden ser ud for indsætning og hentning af objekter til og fra databasen - altså den problematiske håndtering af specialtegn, således at browseren ikke (mis)tolker dem som kode, hvorved den skaber en lind støm af fejl-meddelelser, hvis brugeren har været så fræk at submitte indlæg med specialtegn.
Jeg har følgende kode, som desværre udskriver følgende (jeg afprøver p.t. kun på titlen)...
God "dansk" mad
...i stedet for...
God "dansk" mad _____________________________________________________
ÆNDRING/KONVERTERING AF SPECIALTEGN function ReplaceMy (replaceStr)
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
Nej, "God "dansk"" skulle gerne blive til "God "dansk" mad", men det gør det ikke - lige meget om jeg anvender replace-funktion eller htmlencode-funktionen.
Du har din egen replace funtion hvor du selv laver " om til "
Denne linie er taget fra din func´tion som er vist i spørgsmålet: replaceStr = Replace(replaceStr, Chr(34), """) '<-- " -> "
Jeg forstår ikke helt problemmet, du skal da bare smide teksten fra din input direkte ned i databasen, uden at lave nogen konvertering. Det eneste du skal konvertere er en ' til to '' for at undgå SQL fejl.
Server.HTMLEncode laver " og andre tegn om til standart koder som ".
>>eagleeye Jeg har prøvet med at lave en replace-funktion, men det virkede heller ikke - det gav samme resultat, dvs.: God "dansk" mad i stedet for God "dansk" madlaving
I er nok alle sammen inde på noget af det rigtige mht. jeg bruger for mange "-tegn, men når jeg piller dem væk, bliver strengene, som hentes fra databasen, opfattet som en variabel, som er undefined - altså hvis jeg f.eks. skriver: response.write (server.htmlencode(rs("titel")))
>Men det giver præcis det samme resultat: God "dansk" mad Nej, det passer ikke. Hvis jeg har - God "dansk" mad - stående nede i databasen, skriver den: Error: 'God' is undefined.
Hvis jeg skriver følgende, virker det, dvs. at den skriver God "dansk" mad: Response.Write "document.write(""" & titel & """);"
MEN hvis jeg skriver følgende, virker det IKKE, dvs. at den indsætter i arrayet God "dansk" mad: response.write "gruppe[1][" & i & "]=new artikel (""" & rs("artikelnr") & """,""" & titel & """,....
Konklusion: Den kan godt finde ud af udskrive det, men ikke indsætte det i et array - hvorfor?????????? ___________________________________________________________________________________
<html> <head> <script>
var gruppe = new Array(); gruppe[1] = new Array();
problemer er lidt at du putter det ind i en javascript-funktion - lige umiddelbart _burde_ det være nok at lave en replace på tegnet ' til fx ´ og altså ikke noget med encode eller noget.
det er kun ved udskrivning af indhold til fx en tabel at det vil være relevant at bruge encode.
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.