| 
					
							
        
    
        
						
			 | 
			
			
					    
					
        
         
          
         
	
            | 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,"'","'")
 strTemp = Replace(strTemp,"&","&")
 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,"'","'")
 > strTemp = Replace(strTemp,"&","&")
 > 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,"'","'")
        strTemp = Replace(strTemp,"&","&")
        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
            
              |   |   
            
        
 
    
 
					
					 
			 | 
			
				
        
			 |