Om databasvärdet är <NULL> och jag skriver: Booleanska operationer på null är null inte sant eller falskt. If satser kontrollerar om värdet är sant(skilt från 0). Null är inte skilt från 0 därför utför den else-satsen. Fick inte denna till att fungera: <b>Tack, nu förstod jag!Mysql - ASP (NULL)
<% If RS("Bild1") = "" THEN %>
Så anser min kod att <NULL> = "Någonting"
Har ni nåra tips om hur jag kan skriva för att den skall förstå?
Tack på förhand!Sv: Mysql - ASP (NULL)
Ett enkelt sätt att undkomma detta är att använda else-satsen:
<%
If RS("Bild1") <> "" Then
Response.Write "<img src=""" & RS("Bild1") & """/>"
Else
Response.Write "Ingen bild"
End If
%>
If sattsen hanterar nu både null och tomma strängar.
Om du bara vill testa efter null skriver du:
<%
If IsNull(RS("Bild1")) Then
Response.Write "Ingen bild"
Else
Response.Write "<img src=""" & RS("Bild1") & """/>"
End If
%>
Sv: Mysql - ASP (NULL)
<%
If RS("Bild1") <> "" Then
%>
Den andra fungerade perfekt. Några fler idéer?Sv:Mysql - ASP (NULL)
Fick inte denna till att fungera:
</b>
<%
If RS("Bild1") <> "" Then
%>
<%
End if
%>
Då förstod du inte det är:
<%
If RS("Bild1") <> "" Then
Else
%>
<%
End if
%>
Du skall skriva.
Får reviderar mig till att jämförelse operationer inte fungerar på Null.
För:
True or Null = True
Däremot är:
False or Null = Null
Lite mysko semantik. Jag skulle se att uttryck där null ingick var konsekvent lika med null.
Men då skulle inte Henrik Malmberg kod fungera:
if isnull(rs("ngt")) or rs("ngt") = "" then
' tomt
end if
Vilket den gör.