/ 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
Invalid use of Null: 'Replace'
Fra : Michael Tillgaard


Dato : 12-03-10 19:44

Jeg bruger nedenstående til at indsætte linjeskift fra db'en
<%
Function replaceSpecialChars(ByVal strText)
Dim strTemp
strTemp = Replace(strText,"'","&#39;")
strTemp = Replace(strTemp,"&","&amp;")
strTemp = Replace(strTemp,vbcrlf,"<br>")
replaceSpecialChars = strTemp
End Function
%>
<% = replaceSpecialChars(Indhold) %>
Men når feltet er tomt i db'en får jeg følgende fejl:
Microsoft VBScript runtime error '800a005e'
Invalid use of Null: 'Replace'
Hvordan undgår jeg det?

--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

 
 
Rune Jensen (12-03-2010)
Kommentar
Fra : Rune Jensen


Dato : 12-03-10 20:18

Den 12-03-2010 19:44, Michael Tillgaard skrev:
> Jeg bruger nedenstående til at indsætte linjeskift fra db'en
> <%
> Function replaceSpecialChars(ByVal strText)
> Dim strTemp
> strTemp = Replace(strText,"'","&#39;")
> strTemp = Replace(strTemp,"&","&amp;")
> strTemp = Replace(strTemp,vbcrlf,"<br>")
> replaceSpecialChars = strTemp
> End Function
> %>
> <% = replaceSpecialChars(Indhold) %>
> Men når feltet er tomt i db'en får jeg følgende fejl:
> Microsoft VBScript runtime error '800a005e'
> Invalid use of Null: 'Replace'
> Hvordan undgår jeg det?

Prøv strText = Trim( strText + " ")

allerføsrt i function

Så fåe din textstreng værdien tom. Vær opmærksom på, der kan opleves
forskel senere, fordi tomt og ingenting ikke er det samme (som jeg har
forstået det). Ligeledes, så vil dette fjerne evt. white-spaces før og
efter eft- tekst i strengen.

Dette virker for så vidt selve funktionen. Jeg ville dog - måske - have
det noget før, på selve de variable, som bruges i selve kaldet til
funktionen. Det er én af måderne at "sanitize" sine variable.


MVH
Rune Jensen

Stig Johansen (12-03-2010)
Kommentar
Fra : Stig Johansen


Dato : 12-03-10 20:24

Michael Tillgaard wrote:

> Jeg bruger nedenstående til at indsætte linjeskift fra db'en
> <%
> Function replaceSpecialChars(ByVal strText)
If Isnull(strtext)
replaceSpecialChars=""
End function
end if
.....

> Hvordan undgår jeg det?

--
Med venlig hilsen
Stig Johansen

Rune Jensen (12-03-2010)
Kommentar
Fra : Rune Jensen


Dato : 12-03-10 20:42

Den 12-03-2010 20:23, Stig Johansen skrev:
> Michael Tillgaard wrote:
>
>> Jeg bruger nedenstående til at indsætte linjeskift fra db'en
>> <%
>> Function replaceSpecialChars(ByVal strText)
> If Isnull(strtext)
> replaceSpecialChars=""
> End function
> end if
> ....
>
>> Hvordan undgår jeg det?

Det er en god idé, men er isNull altid sikker at bruge?

Jeg tænkte på noget a la

Function replaceSpecialChars(ByVal strText)

Dim strTemp
strTemp = ""

if Len( strText) >0 then
strTemp = Replace(strText,"'","&#39;")
strTemp = Replace(strTemp,"&","&amp;")
strTemp = Replace(strTemp,vbcrlf,"<br>")
end if

replaceSpecialChars = strTemp

End Function


?


MVH
Rune Jensen

Stig Johansen (12-03-2010)
Kommentar
Fra : Stig Johansen


Dato : 12-03-10 21:49

Rune Jensen wrote:

> Det er en god idé, men er isNull altid sikker at bruge?

Hvad mener du med sikker?
Enten er den null, eller også er den ikke.

> Jeg tænkte på noget a la
>
> Function replaceSpecialChars(ByVal strText)
>
> Dim strTemp
> strTemp = ""
>
> if Len( strText) >0 then

Sådan kan man måske også gøre det, men ellers
.....
if not isnull(strtext) then
.....

I visse sprog vil en len(strtext) fejle hvis strtext er null.

--
Med venlig hilsen
Stig Johansen

Rune Jensen (13-03-2010)
Kommentar
Fra : Rune Jensen


Dato : 13-03-10 00:26

Den 12-03-2010 21:48, Stig Johansen skrev:
> Rune Jensen wrote:
>
>> Det er en god idé, men er isNull altid sikker at bruge?
>
> Hvad mener du med sikker?

At man ikke altid kan regne med, at den er hvad man tror.

Jeg er ikke den store ekspert, men jeg har fundet nogle links:

http://bytes.com/topic/asp-classic/answers/53790-isnull-bug-asp

Siger mig ikke meget om selve problemet, andet end ordene "much safer"
dem forstår jeg selvfølgelig.


MVH
Rune Jensen

Søg
Reklame
Statistik
Spørgsmål : 177414
Tips : 31962
Nyheder : 719565
Indlæg : 6407841
Brugere : 218876

Månedens bedste
Årets bedste
Sidste års bedste