18. maj 2004 - 13:34Der er
11 kommentarer og 1 løsning
Hvofor virker min if sætning ikke.
Jeg har følgende kode. Den virker fint hvis jeg fjerner if rundt om sætningen Response.write "<a href='sup/" & rs("Fil") & "' class='test' target='_blank'>Tryk her for yderlig information</a> <br>"
men når if sætning er på så åbner den kun siden. /sup og skriver så http forbudt 403 Er der nogen der kan komme med en løsning på problemmet
<% Set Conn = Server.CreateObject("ADODB.Connection") DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; " DSN = DSN & "DBQ=" & Server.MapPath("tutorial.mdb") Conn.Open DSN strSQL = "Select * from Nedbrud WHERE Id="& Request.Querystring("Id")
Set rs = Conn.Execute(strSQL) Response.write "<h1>Driftinformation for " & rs("System") & " den " & rs("dato") & "</h1>" Response.write "<textarea cols='40' rows='8'>" & rs("hvad") & "</textarea> <br>"
If rs("Fil") <> "" then Response.write "<a href='sup/" & rs("Fil") & "' class='test' target='_blank'>Tryk her for yderlig information</a> <br>" end if
<% Set Conn = Server.CreateObject("ADODB.Connection") DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; " DSN = DSN & "DBQ=" & Server.MapPath("tutorial.mdb") Conn.Open DSN strSQL = "Select * from Nedbrud WHERE Id="& Request.Querystring("Id")
Set rs = Conn.Execute(strSQL) Response.write "<h1>Driftinformation for " & rs("System") & " den " & rs("dato") & "</h1>" Response.write "<textarea cols='40' rows='8'>" & rs("hvad") & "</textarea> <br>"
If not rs("Fil") = "" then Response.write "<a href=""sup/" & rs("Fil") & """ class='test' target='_blank'>Tryk her for yderlig information</a> <br>" end if
Det er ikke fordi du mangler noget i denne (et dokument):
If rs("Fil") <> "" then Response.write "<a href='sup/" & rs("Fil") & "' class='test' target='_blank'>Tryk her for yderlig information</a> <br>" end if
<% If RS("fil") <> "" Then %> <a href="sup/"<%=RS("fil")%> class="test" target="_blank">Tryk her for yderligere information</a><br> <% End If %>
skal måske rettes til:
<% If RS("fil") <> "" Then %> <a href="sup/dokument.asp"<%=RS("fil")%> class="test" target="_blank">Tryk her for yderligere information</a><br> <% End If %>
If rsEntries("fil") <> "" then Response.write "<a href=sup/" & rsEntries("fil") & " class=tes' target=_blank>Tryk her for yderlig information</a> <br>" end if
Prøv at smide din fil ned i en variabel.... access kan godt være lidt tricky hvad det angår:
<% Set Conn = Server.CreateObject("ADODB.Connection") DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; " DSN = DSN & "DBQ=" & Server.MapPath("tutorial.mdb") Conn.Open DSN strSQL = "Select * from Nedbrud WHERE Id="& Request.Querystring("Id")
Set rs = Conn.Execute(strSQL) Response.write "<h1>Driftinformation for " & rs("System") & " den " & rs("dato") & "</h1>" Response.write "<textarea cols='40' rows='8'>" & rs("hvad") & "</textarea> <br>"
filnavn = rs("fil") If filnavn <> "" then Response.write "<a href='sup/" & filnavn & "' class='test' target='_blank'>Tryk her for yderlig information</a> <br>" end if
Jeg ved ærlig talt ikke hvorfor access ikke kan håndtere at man bruger et felt flere gange (sommetider)...
Jeg har vænnet mig til når jeg programmerer til en access base at ligge de ting som jeg bruge flere gange ned i variabler, for så er jeg sikker på at kunne bruge dem igen.....
Men er da glad for at du fik det til at virke ;) tak for point...
Generel betragtning... Når du spørger til rs("fil") så får du returneret en objektvariabel af typen ADODB.Field. Det vil sige at du egentligt spørger til om en objektvariabel er forskellig fra en tom string. Det fungerer som regel ok, men skal du gøre det korrekt bør du skrive:
If rs.Fields.Item("fil").Value <> "" Then ... End If
Tak for de gode svar. Det er dog lidt sjovt som det virker engang imellem :-)
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.