Avatar billede vester Novice
15. oktober 2001 - 13:14 Der er 6 kommentarer og
1 løsning

vis/skjul ved hjælp af \"Checkbox\"

På min admin side er der en liste, der viser indholdet fra min database.
For hver database-post er der en \"Checkbox\", der gerne skal vise om kolonnen \"vis\"
i databasen er TRUE eller FALSE.

Det skal være muligt at ændre status på kolonnen ved hjælp af Checkboxen.
VesTer
Avatar billede eagleeye Praktikant
15. oktober 2001 - 19:16 #1
Hver felt skal havde en checkbox. Alle checkboxe skal havde samme navn og deres value skal være ID på posten. Så skal du havde en update side som gemmer i databasen. Det har du sikkert, så du kan ligge det kode ind som er i bunden:

Checkboxen:
<input type=\"checkbox\" name=\"visstatus\" value=\"<%=rs(\"ID\")%>\" <% if rs(\"vis\") = true then Response.Write \" checked\"%>>Vis


Kode som updater databasen:
  strIDinput = Request.Form(\"visstatus\")
  if strIDinput = \"\" then \'Alle er sat til ikke vis
    strSQL = \"UPDATE tabel SET vis=false;\"
    myConn.Execute (strSQL)
  else 
    strSQL = \"UPDATE tabel SET vis=true WHERE id IN (\" & strIDinput & \");\" \'Opdate dem som er valgt til true
    myConn.Execute (strSQL)
    strSQL = \"UPDATE tabel SET vis=false WHERE id NOT IN (\" & strIDinput & \");\" \'Opdater dem som ikke er valgt til false
    myConn.Execute (strSQL)
  end if
Avatar billede vester Novice
15. oktober 2001 - 23:20 #2
Vil du skrive hele databasekaldet ind her?

Jeg bruger denne side som action i min form:
<% Option Explicit
Response.Buffer = True %>
<%
strIDinput = Request.Form(\"visstatus\")
if strIDinput = \"\" then \'Alle er sat til ikke vis
strSQL = \"UPDATE news SET vis=false;\"
myConn.Execute (strSQL)
else 
strSQL = \"UPDATE news SET vis=true WHERE id IN (\" & strIDinput & \");\" \'Opdate dem som er valgt til true
myConn.Execute (strSQL)
strSQL = \"UPDATE news SET vis=false WHERE id NOT IN (\" & strIDinput & \");\" \'Opdater dem som ikke er valgt til false
myConn.Execute (strSQL)
end if
Response.Redirect(ViewList.asp)
%>

VesTer
Avatar billede eagleeye Praktikant
15. oktober 2001 - 23:23 #3
myConn skal være en connection til din database som vis ligger i:

Eks på myConn

strDSN = \"DRIVER={Microsoft Access Driver (*.mdb)};DBQ=\"&Server.MapPath(\".\\db\\db5.mdb\")
Set myConn = Server.CreateObject(\"ADODB.Connection\")
Set rs = Server.CreateObject(\"ADODB.RecordSet\")
myConn.Open strDSN
Avatar billede eagleeye Praktikant
15. oktober 2001 - 23:23 #4
var det det du mente ?
Avatar billede vester Novice
15. oktober 2001 - 23:30 #5
Det var det jeg mente, men nu skriver den dette:


Der opstod en Microsoft VBScript-kørselsfejl fejl \'800a01f4\'

Variablen er ikke defineret: \'strDSN\'
Avatar billede eagleeye Praktikant
15. oktober 2001 - 23:31 #6
så skal der nok lige en dim stDSN ind:
dim strDSN
strDSN = \"DRIVER={Microsoft Access Driver (*.mdb)};DBQ=\"&Server.MapPath(\".\\db\\db5.mdb\")
Avatar billede vester Novice
15. oktober 2001 - 23:37 #7
Efter at have tilføjet denne linie virkede det:
Dim strDSN, myConn, rs, strIDinput, strSQL

Tak for hjælpen

VesTer
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