/ Forside / Teknologi / Udvikling / ASP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
ASP
#NavnPoint
smorch 9259
Harlekin 1866
molokyle 1040
Steffanst.. 758
gandalf 657
smilly 564
gibson 560
cumano 530
MouseKeep.. 480
10  Random 410
Parsing af Textarea
Fra : Jesper Fink


Dato : 11-01-01 19:54

I tilknytning til spørgsmål tidligere i dag.

Jeg har en TEXTAREA, som skal bruges til at indtaste "formatteret" tekst,
dvs. incl. linieskift mm. Jeg har en række spørgsmål hertil:

- Hvad er bedst at bruge: Request.Querystring (Method=GET) eller
Request.Forms(METHOD=POST)? Er der nogen forskel på hvordan de to metoder
håndterer tekststrengen?

- Er der nogen forskel på resultatet af disse to sætninger?:
varTekst = Request.Querystring("tekst")
varTekst = Mid(Request.Querystring, varStart, varSlut)

- Findes der en ENCTYPE eller anden måde, hvor man kan undgå at skulle parse
teksten for at udskifte samtlige specialkarakterer (f.eks. )?
Request.Querystring erstatter alle specialkarakterer med %XX-koder. Er der
evt. nogle der har udviklet et sådant parsing-script?

Og nu bliver det tricky.... Der skal nemlig være en mulighed for at trække
strengen fra textarea'en ud af databasen igen og redigere i en ny textarea.
Jeg sætter teksten ind i textarea'en ved hjælp af javascript:

<SCRIPT>document.textarea.value = <%=varTekst%></SCRIPT>

MEN: Her optræder linieskiftene som <BR>-koder i vinduet, dvs. der skrives
"<BR>" istedet for at lave en Cr/Lf... Hvordan skriver jeg en Cr/Lf til en
textarea?

Jeg siger tak, hvis nogle kan give et bud

/jesper



 
 
Jakob Andersen (11-01-2001)
Kommentar
Fra : Jakob Andersen


Dato : 11-01-01 20:06

Jesper Fink <grande@hik-aalborg.dk> skrev
> - Hvad er bedst at bruge: Request.Querystring (Method=GET) eller
> Request.Forms(METHOD=POST)? Er der nogen forskel på hvordan de to metoder
> håndterer tekststrengen?

Begge metoder URL-encoder strengen, men med GET er der en grænse for antal
tegn (ca. 1024 svjh.) så hvis du regner med større tekstmængder er POST at
foretrække

> - Er der nogen forskel på resultatet af disse to sætninger?:
> varTekst = Request.Querystring("tekst")
> varTekst = Mid(Request.Querystring, varStart, varSlut)
^^^^ Går ud fra
at du glemte ("tekst")

Mid() er en funktion der klipper et stykke tekst ud, det starter ved tallet
angivet i varStart variablen og tager derefter det antal karakterer frem der
er speciferet i varSlut, man behøves ikke at specifere en længde. Se evt.
<http://www.devguru.com/index.asp?page=/Technologies/vbscript/quickref/mid.h
tml>

--
Venlig hilsen
Jakob Andersen
"Det er rart at være vigtig, men det er vigtigere at være rar"
>
> - Findes der en ENCTYPE eller anden måde, hvor man kan undgå at skulle
parse
> teksten for at udskifte samtlige specialkarakterer (f.eks. )?
> Request.Querystring erstatter alle specialkarakterer med %XX-koder. Er der
> evt. nogle der har udviklet et sådant parsing-script?
>
> Og nu bliver det tricky.... Der skal nemlig være en mulighed for at trække
> strengen fra textarea'en ud af databasen igen og redigere i en ny
textarea.
> Jeg sætter teksten ind i textarea'en ved hjælp af javascript:
>
> <SCRIPT>document.textarea.value = <%=varTekst%></SCRIPT>
>
> MEN: Her optræder linieskiftene som <BR>-koder i vinduet, dvs. der skrives
> "<BR>" istedet for at lave en Cr/Lf... Hvordan skriver jeg en Cr/Lf til
en
> textarea?
>
> Jeg siger tak, hvis nogle kan give et bud
>
> /jesper
>
>



Lauritz Jensen (11-01-2001)
Kommentar
Fra : Lauritz Jensen


Dato : 11-01-01 20:18

Så tager jeg over her

Jakob Andersen wrote:
>
> Jesper Fink <grande@hik-aalborg.dk> skrev
> >
> > - Findes der en ENCTYPE eller anden måde, hvor man kan undgå at
> > skulle parse teksten for at udskifte samtlige specialkarakterer
> > (f.eks. )?

Hvad mener du? Når du får teksten skal du jo bare behandle den som
ascii-tekst og ikke html (for det er det ikke). Dvs. iden du f.eks.
response.Write'er tesken ud til brugeren igen, skal du sende lave den
til html:
Response.Write Replace(Server.HtmlEncode(teksten), vbLf, "<br>")

> > Request.Querystring erstatter alle specialkarakterer med %XX-koder.
> > Er der evt. nogle der har udviklet et sådant parsing-script?

Det klare asp for dig. Når du bruge Request-objektet er alle %xx-koder
løst til deres originale ascii værdi.

> > Og nu bliver det tricky.... Der skal nemlig være en mulighed for
> > at trække strengen fra textarea'en ud af databasen igen og
> > redigere i en ny textarea.
> > Jeg sætter teksten ind i textarea'en ved hjælp af javascript:
> >
> > <SCRIPT>document.textarea.value = <%=varTekst%></SCRIPT>
> >
> > MEN: Her optræder linieskiftene som <BR>-koder i vinduet, dvs. der skrives
> > "<BR>" istedet for at lave en Cr/Lf... Hvordan skriver jeg en Cr/Lf til en
> > textarea?

Det er ikke tricky. Hvis variablen "teksten" indeholder din ascii-tekst,
skrives den ud således:

Response.Write "<textarea name="teksten">" & Server.HtmlEncode(teksten)
& "</textarea>"
(bemærk at denne gang laves linieskiftene ikke om til "<br>")

--
Lauritz

Jakob Andersen (11-01-2001)
Kommentar
Fra : Jakob Andersen


Dato : 11-01-01 20:12

[Fik skudt forrige indlæg af lidt for hurtigt]

Jesper Fink <grande@hik-aalborg.dk> skrev
> - Findes der en ENCTYPE eller anden måde, hvor man kan undgå at skulle
parse
> teksten for at udskifte samtlige specialkarakterer (f.eks. )?

Jeg ved ikke lige hvad du vil men hvis det er fordi der ikke må indtastes
HTML-koder kan du bruge Server.HTMLEncode(mitrecordset("tekst")) det vil
sørge for at Alt teksten bliver udskrevet som det er tastet ind i
Textarea´et se. evt
<http://msdn.microsoft.com/library/psdk/iisref/vbob9aat.htm>

> <SCRIPT>document.textarea.value = <%=varTekst%></SCRIPT>
> MEN: Her optræder linieskiftene som <BR>-koder i vinduet, dvs. der skrives
> "<BR>" istedet for at lave en Cr/Lf... Hvordan skriver jeg en Cr/Lf til
en
> textarea?

Det er en god ide at undgå HTMLkoder i databasen derfor: udskift kun vbCrLf
med <BR> i det øjeblik den udskrives fra databasen.(Og brug ved samme
lejlighed HTMLencode)

--
Venlig hilsen
Jakob Andersen
"Det er rart at være vigtig, men det er vigtigere at være rar"



Søg
Reklame
Statistik
Spørgsmål : 177557
Tips : 31968
Nyheder : 719565
Indlæg : 6408868
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste