Avatar billede plasmon Nybegynder
17. november 2002 - 20:19 Der er 6 kommentarer og
1 løsning

checkbox

Hej jeg skal lave et script hvor man skal kunne gemme "positionen" af en checkbox, om det er true eller false. resultatet skal gemmes i en access db.

her er mit script:

<!-- #include file="adminadgang.inc" -->
<%
dim titel
dim site
dim active
dim oprettet
dim dbname
dim cn
dim constr
dim feltnavne
dim vaerdier
dim sqlstring

' hentning af data fra formularen på denne kaldende side
titel=request.form("titel")
site=request.form("site")
active=request.form("active")

' der laves 2 strenge
' en med feltnavne i databasen
' en med vaerdier fra formularen

' næste sæt (emnetitel) tilføjes
feltnavne=feltnavne & "titel"
vaerdier=vaerdier &  "'" & titel &"'"

feltnavne=feltnavne & ",site"
vaerdier=vaerdier & ",'" & site &"'"

feltnavne=feltnavne & ",active"
vaerdier=vaerdier & ",'" & active &"'"

' tilslut tilføjes det aktuelle tidspunkt
feltnavne=feltnavne & ",oprettet"
vaerdier=vaerdier & ",'" & now &"'"


' herefter laves stringen der skal bruges til opdatering af databasen
sqlstring="insert into site (" & feltnavne & ") values (" & vaerdier & ")"

dbname=Server.MapPath("../db/database.mdb")

set cn = server.createobject("ADODB.Connection")

constr = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source =" & dbname
cn.connectionstring = constr

cn.open
response.write sqlstring
cn.execute sqlstring

response.write ("<br>siden er  tilføjet<br>")
'response.redirect "info.asp"
cn.close
set cn=nothing

%>

I databasen er fælterne active sat til yes/no

Hvad gør jeg for at få det til at virke?

MVH Plasmon
Avatar billede medions Nybegynder
17. november 2002 - 20:45 #1
Fx sådan her:

<input type="checkbox" name="søg" value="1">
Så finner du ut om den er trykket av slik:
søg = request.Form("søg")
If søg = 1 Then
....
Else
....
End If

//>Rune
Avatar billede aspbuilder Nybegynder
17. november 2002 - 20:46 #2
Hvis du vil have active til at være checked skal du -1, -1 afkrydser dit active felt i databasen.

/ASP Builder
http://www.codecenter.dk
Avatar billede plasmon Nybegynder
17. november 2002 - 21:53 #3
jeg har gjort sådan :

If active = -1 then
    set active="Ja"
else
    set active="Nej"
end if

det jeg vil have den til er at skrive teksten "ja" i db hvis boxen er krydset af og "Nej" hvis den ikke er krydset af.

Jeg får fejlen:

Error Type:
Microsoft VBScript runtime (0x800A01A8)
Object required: '[string: "Nej"]'
Linie 27

MVH Plasmon
Avatar billede technodance.dk Nybegynder
18. november 2002 - 00:11 #4
<%

Const adOpenKeyset = 1
Const adLockOptimistic = 3

Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "PROVIDER=MSDASQL;DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" & Server.MapPath("info.mdb")
    Set rs = Server.CreateObject("ADODB.RecordSet")
    strSQL = "Select * From info"
    rs.Open strSQL, Conn, adOpenKeyset, adLockOptimistic

    rs.AddNew
      if Request.form("R1") = "Ja" then
              rs("R1") = true
          else
              rs("R1") = false
          end if
   
      rs.Update

    rs.Close
    Set rs = Nothing

Conn.Close
set Conn = Nothing
%>

//technodance.dk//
Avatar billede medions Nybegynder
18. november 2002 - 00:50 #5
Du skal ikke ha' Set foran i dine variabler!
if active = -1 then
    active="Ja"
else
    active="Nej"
end if

//>Rune
Avatar billede plasmon Nybegynder
18. november 2002 - 12:59 #6
OK...

Nu ser mit script sådan ud, men den siger der stadig er fejl:

<!-- #include file="adminadgang.inc" -->
<%
dim dbname
dim cn
dim constr
dim sqlstring
dim resultat
dim id
dim titel
dim site
dim active
dim oprettet
dim feltnavne
dim vaerdier


id=request.querystring("id")

' hentning af data fra formularen på denne kaldende side
titel=request.form("titel")
site=request.form("site")
active=request.form("active")

if active = "on" then
    active = "ja"
else
    active = "nej"
end if

' der laves 2 strenge
' en med feltnavne i databasen
' en med vaerdier fra formularen

' næste sæt (emnetitel) tilføjes
feltnavne=feltnavne & "titel"
vaerdier=vaerdier &  "'" & titel &"'"

feltnavne=feltnavne & ",site"
vaerdier=vaerdier & ",'" & site &"'"

feltnavne=feltnavne & ",active"
vaerdier=vaerdier & ",'" & active &"'"

' tilslut tilføjes det aktuelle tidspunkt
feltnavne=feltnavne & ",oprettet"
vaerdier=vaerdier & ",'" & now &"'"

dbname=Server.MapPath("../db/database.mdb")

set cn= server.createobject("ADODB.Connection")

constr = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source =" & dbname
cn.connectionstring = constr

cn.open

sqlstring="update site set titel='" & titel & "', site='" & site & "', active='" & active & "', oprettet='" & now &"' where id=" &  id & ";"
response.write sqlstring
'cn.execute(sqlstring)

cn.close
set cn=nothing   
'response.redirect "viewdelinfosite.asp"
%>

fejlen er:

Error Type:
Microsoft VBScript compilation (0x800A0408)
Invalid character
line 27
Avatar billede plasmon Nybegynder
27. april 2003 - 14:25 #7
LUKKET
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