/ 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
Fejl ved server.htmlencode
Fra : Steen


Dato : 29-11-02 11:43

Hej NG

Jeg har tidligere gemt en hel masse html-kode i en Access2000-db vha.
asp-sider. For nylig fandt jeg så ud af, at det var smart at bruge
server.htmlencode, når teksten skulle sættes ind i et tekstfelt, så man
ikke fik ødelagt html-koderne   & etc.

Problemet er, at visse felter - ikke alle! - og de er altid tomme -
forårsager en fejl: "Type mismatch: 'htmlencode'". Hvis jeg fjerner
htmlencode og gemmer en tom streng, så virker det igen, når jeg slår
htmlencode til igen!

Hvordan i alverden kan der være forskel på "" og ""? Det er vel begge tomme
strenge? Hvordan kan en tom streng indeholde noget, som kan forårsage en
type mismatch ved htmlencode?

Og værre: hvad kan jeg gøre ved det? Jeg har ikke mod på at gå alle mine
databaseentries igennem for at tjekke, om de fejler ved htmlencode, og så
gemme endnu en tom streng!

Mvh Steen




 
 
Chrisser (29-11-2002)
Kommentar
Fra : Chrisser


Dato : 29-11-02 11:51

"Steen" <nospam@nospam.dk> skrev i en meddelelse
news:as7gca$pnc$1@sunsite.dk...

> Problemet er, at visse felter - ikke alle! - og de er altid tomme -
> forårsager en fejl: "Type mismatch: 'htmlencode'". Hvis jeg fjerner
> htmlencode og gemmer en tom streng, så virker det igen, når jeg slår
> htmlencode til igen!
>
> Hvordan i alverden kan der være forskel på "" og ""? Det er vel begge
tomme
> strenge? Hvordan kan en tom streng indeholde noget, som kan forårsage en
> type mismatch ved htmlencode?

Det er der nok heller ikke, jeg vil gætte på at problemet er at htmlEncode
godt kan håndtere en tom streng, men ikke en Null-værdi.
Hvis du ikke har indsat noget i et felt i databasen vil dette felt have
værdien Null, også når du forsøger at trække det ud.

> Og værre: hvad kan jeg gøre ved det? Jeg har ikke mod på at gå alle mine
> databaseentries igennem for at tjekke, om de fejler ved htmlencode, og så
> gemme endnu en tom streng!

Sådan lige på hukommelsen er der i asp VB en funktion der hedder
isNull(variabel). Den returnerer true/false, og med den kan du teste for
denne forekomst og så evt udskifte med en tom streng, før du kører den
videre igennem htmlEncode.


Chrisser



Steen (29-11-2002)
Kommentar
Fra : Steen


Dato : 29-11-02 14:09

"Chrisser" <cbj@egdatainform.dk> skrev

> Det er der nok heller ikke, jeg vil gætte på at problemet er at htmlEncode
> godt kan håndtere en tom streng, men ikke en Null-værdi.
> Hvis du ikke har indsat noget i et felt i databasen vil dette felt have
> værdien Null, også når du forsøger at trække det ud.

Fuldstændig korrekt.

> Sådan lige på hukommelsen er der i asp VB en funktion der hedder
> isNull(variabel). Den returnerer true/false, og med den kan du teste for
> denne forekomst og så evt udskifte med en tom streng, før du kører den
> videre igennem htmlEncode.

Bingo. Jeg updatede simpelthen med en tom streng, der hvor isNull var True.
Voila - nu spiller det igen - 1.000 tak for hjælpen

Mvh Steen



Jakob Andersen (29-11-2002)
Kommentar
Fra : Jakob Andersen


Dato : 29-11-02 14:50

"Chrisser" <cbj@egdatainform.dk> wrote
> Sådan lige på hukommelsen er der i asp VB en funktion der hedder
> isNull(variabel). Den returnerer true/false, og med den kan du teste for
> denne forekomst og så evt udskifte med en tom streng, før du kører den
> videre igennem htmlEncode.

Man kan også blot lægge "" til strengen altså:

Server.HtmlEncode( Variabel & "" )

Så kan NULL værdier også håndteres.

--
Jakob Andersen



Steen (29-11-2002)
Kommentar
Fra : Steen


Dato : 29-11-02 15:41

"Jakob Andersen" <jakob@effectus.dk> skrev

> Man kan også blot lægge "" til strengen altså:
>
> Server.HtmlEncode( Variabel & "" )
>
> Så kan NULL værdier også håndteres.

Ja, OK, det var faktisk et godt tip. Den skal jeg lige huske

Mvh Steen



Ulrik Lunddahl (04-12-2002)
Kommentar
Fra : Ulrik Lunddahl


Dato : 04-12-02 23:51

"Steen" <nospam@nospam.dk> wrote:

> Ja, OK, det var faktisk et godt tip. Den skal jeg lige huske

Eller konvertere til en streng:

Server.HtmlEncode(CStr(Variabel))

Det er jo rent faktisk det du bliver bedt om med meldingen:

Type mismatch

--
Med Venlig Hilsen

Ulrik Lunddahl - nospam037@lunddahl.dk
My heroes: Heddy Lamar, George Antheil and now also Anders Hejlsberg



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

Månedens bedste
Årets bedste
Sidste års bedste