Avatar billede babyworm Nybegynder
23. juni 2004 - 12:22 Der er 2 kommentarer og
1 løsning

True/false i ASP med Access

Hejsa,


Jeg har et felt i min Access database som hedder hidden. Det er et ja/nej felt, dvs en afkrydsning i databasen.

Jeg skal så kunne skifte imellem true/false i min asp, og har lavet følgende kode:

<!-- #include virtual="/inc/dbconn.asp" -->
<%
strCmd = Request.QueryString("cmd")

openConn()

If strCmd = "update" Then

strId        = Request.Form("id")

strMenutekst    = replace(Request.Form("menutekst")&"","'","''")
strContext    = replace(Request.Form("context")&"","'","''")
strOrder    = Request.Form("order")
strFunction    = Request.Form("function")
strhidden    = Request.Form("hidden")


    strSQL = "UPDATE page SET menutekst='" & strmenutekst & "',context='" & strcontext & "',[order]='" & strorder & "',hidden='" & strhidden & "',function='" & strfunction & "' WHERE id=" & strId
    connection.Execute(strSQL)
    %>
<h2>Siden er nu rettet!</h2><br>
<a href="default.asp?pID=20">Tilbage til oversigten</a>
    <%   
Else

    strId = Request.QueryString("id")
    strSQL = "SELECT id, menutekst, context, order, function, hidden FROM page WHERE id=" & strId
    Set rs = connection.Execute(strSQL)

    If Not (rs.EOF Or rs.BOF) Then

%>
<form method="post" action="default.asp?pID=22&cmd=update">
<table border="0" cellpadding="0" cellspacing="0">
  <tr>
    <td>id:<br><%=rs("id")%><br><br></td>
  </tr>
  <tr>
    <% if rs("hidden") = False Then %>
            <td>Synlig:<br>
        <select name="hidden">
          <option selected value="True">Ja</option>
          <option value="False">Nej</option>
        </select>
    <% ElseIf rs("hidden") = True Then %>
            <td>Synlig:<br>
        <select name="hidden">
          <option value="True">Ja</option>
          <option selected value="False">Nej</option>
        </select> <% End if %>
<br><br></td>
  </tr>
  <tr>
    <td>Order:<br><input type="text" name="order" value="<%=rs("order")%>" class="input"><br><br></td>
  </tr>
  <tr>
    <td>Kategori:<br><input type="text" name="function" value="<%=rs("function")%>" class="input"><br><br></td>
  </tr>
  <tr>
    <td>Menu:<br><input type="text" name="menutekst" value="<%=rs("menutekst")%>" class="input"><br><br></td>
  </tr>
  <tr>
    <td colspan="2">Tekst:<br><textarea name="context" cols="60" rows="10" class="input"><%="" & rs("context")%></textarea><br><br></td>
  </tr>
  <tr>
  <td colspan="2"><input type="submit" value="Ret siden" class="knap"></td>
  </tr>
</table><br><br>
<input name="id" type="hidden" value="<%=rs("id")%>">
<a href="java script:this.history.go(-1);">Tilbage</a>
</form>
<%
    Else

%>
Fejl, siden eksisterer ikke<br><br>
<a href="java script:this.history.go(-1);">Tilbage</a>
<%
    End If

End If

closeConn()
%>


Men når jeg trykker opdater, skriver den:

Fejltype:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E07)
[Microsoft][ODBC Microsoft Access-driver] Datatyperne stemmer ikke overens i kriterieudtrykket.
/update/page/22.asp, line 19

Hvordan laver jeg det rigtigt?
Avatar billede overchord Nybegynder
23. juni 2004 - 12:30 #1
I access er vaerdien af ja/nej felter -1 for true og 0 for false, proev med disse vaerdier.
Avatar billede mm12010 Nybegynder
23. juni 2004 - 12:30 #2
strSQL = "UPDATE page SET menutekst='" & strmenutekst & "',context='" & strcontext & "',[order]='" & strorder & "',hidden=" & strhidden & ",function='" & strfunction & "' WHERE id=" & strId


<option value="1">Ja</option>
<option selected value="0">Nej</option>
Avatar billede babyworm Nybegynder
23. juni 2004 - 12:34 #3
thanks
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester