Avatar billede hypergrafx Nybegynder
09. januar 2001 - 09:05 Der er 16 kommentarer og
1 løsning

Gem valgt radiobutton


Hvordan gemmer man sit valg af en radiobutton, således at næste gang man kommer ind på siden, har den husket det sidste valg af radiobutton ?

Min kode ser således ud:

<%

Set Conn = Server.CreateObject(\"ADODB.Connection\")
Conn.Open \"DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=\" & server.MapPath(\"nyhed.mdb\")

SQLstmt = \"SELECT * FROM adresse WHERE 141 = \" & Request(\"id\")

Conn.Execute (SQLstmt)

Set rs = conn.Execute(SQLstmt)
  %>


<form method=\"POST\" action=\"gem_data.asp\">

  <input type=\"hidden\" name=\"id\" value=\"<%=rs(\"farve1\")%>\">
    <input type=\"radio\" name=\"farve1\" value=\"#21518C\"<% If strValg = \"valg1\" Then Response.Write \" checked\" %>>&nbsp;&nbsp;
    <input type=\"radio\" name=\"farve1\" value=\"#9CC3FF\"<% If strValg = \"valg2\" Then Response.Write \" checked\" %>>&nbsp;&nbsp;
    <input type=\"radio\" name=\"farve1\" value=\"#F4F4EB\"<% If strValg = \"valg3\" Then Response.Write \" checked\" %>>&nbsp;&nbsp;
    <input type=\"radio\" name=\"farve1\" value=\"#D8D8D8\"<% If strValg = \"valg4\" Then Response.Write \" checked\" %>>&nbsp;&nbsp;
    <input type=\"radio\" name=\"farve1\" value=\"#ffffff\"<% If strValg = \"valg5\" Then Response.Write \" checked\" %>>&nbsp;&nbsp;
    <input type=\"radio\" name=\"farve1\" value=\"#000000\"<% If strValg = \"valg5\" Then Response.Write \" checked\" %>>&nbsp;&nbsp;
    <input type=\"radio\" name=\"farve1\" value=\"../images/farve2.gif\"<% If strValg = \"valg6\" Then Response.Write \" checked\" %>>&nbsp;&nbsp;

Avatar billede dkjohn Nybegynder
09. januar 2001 - 09:30 #1
på siden \"gem_data.asp\":
Set Conn = Server.CreateObject(\"ADODB.Connection\")
Conn.Open \"DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=\" & server.MapPath(\"nyhed.mdb\")

SQLstmt = \"SELECT * FROM adresse WHERE 141 = \" & Request(\"id\")

rs(\"valgtfarve\").value=request.form(\"farve1\")
rs.update
rs.close
%>
Hvis ellers \"id\" henviser til en unik bruger i basen.
ellers kan du jo også bruge cookies således:
på \"gem_data.asp\"
<%
response.cookie(\"cookienavn\")(\"farvevalg\")=request.form(farve1)
%>
<html>
<head>....

og når den skal hentes igen:
<%
if request.cookie(\"cookienavn\") hasKeys then
strValg=request(\"cookienavn\")(\"farvevalg\")
End if
%>
<html>
<head>...
Avatar billede dkjohn Nybegynder
09. januar 2001 - 09:31 #2
rettelse:
response.cookie(\"cookienavn\")(\"farvevalg\")=request.form(\"farve1\")
Avatar billede hypergrafx Nybegynder
09. januar 2001 - 10:17 #3
Ved brug af \"rs\" på siden \"gem_ret_data.asp\" som iøvrigt ikke hedder \"gem_data.asp\" (det var en skrivefejl) får jeg følgende fejlmedl.:

Fejltype:
Der opstod en Microsoft VBScript-kørselsfejl (0x800A000D)
Typerne passer ikke sammen: \'rs\'
/Expert/nyhed2000/side 1/gem_ret_data.asp, line 22



Og ved brug af cookies får jeg også fejlmedl.:


Fejltype:
Der opstod en Microsoft VBScript-kørselsfejl (0x800A01B6)
Objektet understøtter ikke denne egenskab eller metode: \'response.cookie\'
/Expert/nyhed2000/side 1/gem_ret_data.asp, line 2


Avatar billede hypergrafx Nybegynder
09. januar 2001 - 10:18 #4
Det ser sådan ud:

<%
Set Conn = Server.CreateObject(\"ADODB.Connection\")
Conn.Open \"DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=\" & server.MapPath(\"nyhed.mdb\")


SQLstmt = \"UPDATE DISTINCTROW adresse SET farve1 = \'\" & request.form(\"farve1\") & \"\',navn = \'\" & request.form(\"navn\") & \"\', kategori = \'\" & request.form(\"kategori\") & \"\',info_om = \'\" & request.form(\"info_om\") & \"\' WHERE id = \" & Request(\"id\")
\'SQLstmt = SQLstmt & \" VALUES ( \'\" & request.form(\"farve1\") & \"\',\'\" & request.form(\"navn\") & \"\',\'\" & request.form(\"kategori\") & \"\',\'\" & request.form(\"info_om\") & \"\')\"

rs(\"valgtfarve\").value=request.form(\"farve1\")
rs.update
rs.close

response.write sqlstmt

Conn.Execute (SQLstmt)


conn.Close
Set conn = nothing
Set SQLstmt = nothing

response.redirect (\"adm_vis_data_alt.asp?ID=141\")
%>

Avatar billede dkjohn Nybegynder
09. januar 2001 - 10:29 #5
det skal være response.cookies
og request.cookies jeg kom til at glemme et s tilsidst, sorry
Avatar billede dkjohn Nybegynder
09. januar 2001 - 10:31 #6
SQLstmt = \"UPDATE DISTINCTROW adresse SET farve1 = \" & request.form(\"farve1\") & \",navn = \'\" .....

Jeg kan forestille mig at databasefeltet farve1 er et tal felt og isåfald skal der ikke være \'\' omkring request.form(\"farve1\")
Avatar billede hypergrafx Nybegynder
09. januar 2001 - 10:40 #7
Er et tekstfelt scriptet virker udmærket, jeg skal som sagt have den til at gemme valget af radiobutton til næste gang man ankommer på siden...
Avatar billede dkjohn Nybegynder
09. januar 2001 - 11:02 #8
<%
Set Conn = Server.CreateObject(\"ADODB.Connection\")
Conn.Open \"DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=\" & server.MapPath(\"nyhed.mdb\")

SQLstmt = \"UPDATE DISTINCTROW adresse SET farve1 = \'\" & request.form(\"farve1\") & \"\',navn = \'\" & request.form(\"navn\") & \"\', kategori = \'\" & request.form(\"kategori\") & \"\',info_om = \'\" & request.form(\"info_om\") & \"\' WHERE id = \" & Request(\"id\")

Conn.Execute (SQLstmt)


conn.Close
Set conn = nothing
Set SQLstmt = nothing

response.redirect (\"adm_vis_data_alt.asp?ID=141\")
%>

Avatar billede hypergrafx Nybegynder
09. januar 2001 - 11:20 #9
??????????????? Hvad mener du ?
Avatar billede dkjohn Nybegynder
09. januar 2001 - 11:24 #10
At du ikke skal bruge
<%
rs(\"valgtfarve\").value=request.form(\"farve1\")
rs.update
rs.close
%>
når du bruger \"UPDATE ....\"

Avatar billede hypergrafx Nybegynder
09. januar 2001 - 11:24 #11
Nu er jeg med. nu beholder den valget på siden. Men på den anden er der ikke en makering i den radiobutton man har valgt.
Avatar billede hypergrafx Nybegynder
09. januar 2001 - 11:27 #12
Ikke alligevel ???
Avatar billede dkjohn Nybegynder
09. januar 2001 - 11:29 #13
strValg = \"valgx\" skal skiftes ud med
rs(\"farve1\") = \"#xxxxxx\"
Avatar billede hypergrafx Nybegynder
09. januar 2001 - 11:44 #14
Måske er det mig der er fat-svag, men jeg er temmelig forvirret nu. Du er nød til at vise mig det sammen med min egen kode....
Avatar billede dkjohn Nybegynder
09. januar 2001 - 11:54 #15
<input type=\"hidden\" name=\"id\" value=\"<%=rs(\"farve1\")%>\">
    <input type=\"radio\" name=\"farve1\" value=\"#21518C\"<% If rs(\"farve1\") = \"#21518C\" Then Response.Write \" checked\" %>>&nbsp;&nbsp;
    <input type=\"radio\" name=\"farve1\" value=\"#9CC3FF\"<% If rs(\"farve1\") = \"#9CC3FF\" Then Response.Write \" checked\" %>>&nbsp;&nbsp;
    <input type=\"radio\" name=\"farve1\" value=\"#F4F4EB\"<% If rs(\"farve1\") = \"#F4F4EB\" Then Response.Write \" checked\" %>>&nbsp;&nbsp;
    <input type=\"radio\" name=\"farve1\" value=\"#D8D8D8\"<% If rs(\"farve1\") = \"#D8D8D8\" Then Response.Write \" checked\" %>>&nbsp;&nbsp;
    <input type=\"radio\" name=\"farve1\" value=\"#ffffff\"<% If rs(\"farve1\") = \"#ffffff\" Then Response.Write \" checked\" %>>&nbsp;&nbsp;
    <input type=\"radio\" name=\"farve1\" value=\"#000000\"<% If rs(\"farve1\") = \"#000000\" Then Response.Write \" checked\" %>>&nbsp;&nbsp;
    <input type=\"radio\" name=\"farve1\" value=\"../images/farve2.gif\"<% If rs(\"farve1\") = \"../images/farve2.gif\" Then Response.Write \" checked\" %>>&nbsp;&nbsp;
Avatar billede hypergrafx Nybegynder
09. januar 2001 - 12:23 #16
Nå ja ! Jeg havde cookies i hovedet. Nu virker det. Mange tak for hjælpen :-)
Du er nød til af sende det som svar, så jeg kan give dig dine point.
Avatar billede dkjohn Nybegynder
09. januar 2001 - 12:40 #17
Glad for at kunne hjælpe :-)
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