[asp] waarde van een radiobutton

Pagina: 1
Acties:

  • ArjanC
  • Registratie: Juli 2001
  • Laatst online: 26-01 17:16
Hoi, het zal wel iets heeel simpels zijn maar ik krijg m niet voor elkaar..

ik heb in mijn pagina meerdere radiobuttens staan met dezelfde naam (andere waardes ofcourse)
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
    <tr>
    <td width="25%" height="20">New User</td>
    <td width="25%" height="20">
    <input type="radio"   name="ADUA" value="Adnewuser"></td>
    <td width="25%" height="20">Additional Access</td>
    <td width="25%" height="20">
    <input type="radio"   name="ADUA" value="AdAdditionalAccess"></td>
    </tr>
    <tr>
    <td width="25%" height="20">Cancel User</td>
    <td width="25%" height="20">
    <input type="radio" name="ADUA" value="AdCanceluser"></td>
    <td width="25%" height="20">Change Access</td>
    <td width="25%" height="20">
    <input type="radio"   name="ADUA" value="AdChangeAccess"></td>
    </tr>
    <tr>
    <td width="25%" height="20">Suspend User</td>
    <td width="25%" height="20">
    <input type="radio"   name="ADUA" value="adSuspentuser"></td>
    <td width="25%" height="20">Remove Access</td>
    <td width="25%" height="20">
    <input type="radio"   name="ADUA" value="AdRemoveAccess"></td>
    </tr>
  </table>

op de volgende pagina heb ik dan een code in ASP staan die de waarde dan in een DB moet zetten :
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
checked = "x"

if Request.Form("ADUA") = "AdNewuser" then
recordset("AdNewuser") = checked
end if
if Request.Form("ADUA") = "AdCanceluser" then
recordset("AdCanceluser") = checked
end if
if Request.Form("ADUA") = "AdSuspenduser" then
recordset("AdSuspenduser") = checked
end if
if Request.Form("ADUA") = "AdAdditionalaccess" then
recordset("AdAdditionalaccess") = checked
end if
if Request.Form("ADUA") = "AdChangeAccess" then
recordset("AdChangeAccess") = checked
end if
if Request.Form("ADUA") = "AdRemoveAccess" then
recordset("AdRemoveAccess") = checked
end if

Waarom werkt dit niet ? ik heb het ook geprobeert met dit
code:
1
2
3
if Request.Form("ADUA") = "AdRemoveAccess" then
recordset("AdRemoveAccess") = "x"
end if

maar mocht niet baten.

  • KoeKk
  • Registratie: September 2000
  • Laatst online: 30-08 21:36
Als je nu eens de waardes uit je form schrijft naar je beeld:
code:
1
2
3
For Each Item in Request.Form
  Response.Write Item & " Bevat: " & Request.Form(Item)
Next

Nu zie je wat je uit je Form krijgt, zijn die waardes dan het zelfde als die waarmee je ze vergelijkt?

BTW ik zou ook even kijken hoe je de DB (welke db is het eigenlijk?) update, zou het in plaats van checked niet True moeten zijn?

  • ArjanC
  • Registratie: Juli 2001
  • Laatst online: 26-01 17:16
als ik de waarde uitleest komt er precies te staan wat ik vergelijk.

ik heb bovenaan de pagina staan

Checked = "x"

de DB is een Access..

het maakt voor de DB niet uit welke waarde hij voor z'n kieze krijgt. in de DB staat het veld op Text.

Verwijderd

KoeKk: oeps verkeerde user

  • KoeKk
  • Registratie: September 2000
  • Laatst online: 30-08 21:36
okee, en hoe zie je SQL query eruit?

  • ArjanC
  • Registratie: Juli 2001
  • Laatst online: 26-01 17:16
wat heeft dit met mijn SQL query te maken ?

er staan nog zo'n 150 lijnen onder dit en zo'n 100 erboven..

en er worden nog 20 andere velden geupdate. en die werken wel.

  • palloquin
  • Registratie: Juli 2000
  • Laatst online: 29-01-2021
Heeft idd niets met SQL te maken, hij doet de update via ADO...

Ik weet het niet uit mijn hoofd, maar volgens mij is de waarde "X" niet de juiste voor een boolean veld.. probeer eens True of False te gebruiken..

const CHECKED = True

  • KoeKk
  • Registratie: September 2000
  • Laatst online: 30-08 21:36
Dat heeft met je update query te maken, als je asp code goed is maar hij wordt niet geupdate dan is het logisch dat je naar je update query gaat kijken, toch :? ;)

Ik neem aan dat je een ADO recordset object gebruikt,
moet je dan niet "rs.Update veldnaam, waarde" gebruiken?

btw, als je geen Ado recordset gebruikt doe je nan ergens iets zoals : "db.Execute("SQL query")"?

  • ArjanC
  • Registratie: Juli 2001
  • Laatst online: 26-01 17:16
hehe, ik wist het wel :)

maare, het maakt voor de Database niet uit wat voor waarde hij krijgt.

in de MS access DB zijn de velden tekst velden.

  • KoeKk
  • Registratie: September 2000
  • Laatst online: 30-08 21:36
Op dinsdag 16 april 2002 11:19 schreef palloquin het volgende:
Heeft idd niets met SQL te maken, hij doet de update via ADO...

Ik weet het niet uit mijn hoofd, maar volgens mij is de waarde "X" niet de juiste voor een boolean veld.. probeer eens True of False te gebruiken..

const CHECKED = True
hij zegt net dat hij een text veld gebruikt... Niet echt een goed db ontwerp, maar daar gaat het nu niet over ;)

  • ArjanC
  • Registratie: Juli 2001
  • Laatst online: 26-01 17:16
Op dinsdag 16 april 2002 11:21 schreef KoeKk het volgende:
Dat heeft met je update query te maken, als je asp code goed is maar hij wordt niet geupdate dan is het logisch dat je naar je update query gaat kijken, toch :? ;)

Ik neem aan dat je een ADO recordset object gebruikt,
moet je dan niet "rs.Update veldnaam, waarde" gebruiken?

btw, als je geen Ado recordset gebruikt doe je nan ergens iets zoals : "db.Execute("SQL query")"?
arg.. er worden nog 20 a 30 updates gedaan en die gaan wel goed!

er is niks met mijn SQL aan de hand.

  • palloquin
  • Registratie: Juli 2000
  • Laatst online: 29-01-2021
AH, DUH, mijn fout...

  • ArjanC
  • Registratie: Juli 2001
  • Laatst online: 26-01 17:16
Op dinsdag 16 april 2002 11:22 schreef KoeKk het volgende:

[..]

hij zegt net dat hij een text veld gebruikt... Niet echt een goed db ontwerp, maar daar gaat het nu niet over ;)
ik weet het :) maar eigelijk is hij ook weer wel goed.

nadat alles in de db is gezet moet hij naar een Excel bestand worden gezet.. en daar MOET hij een x zijn :)

en om nou heen en weer te switchen

  • KoeKk
  • Registratie: September 2000
  • Laatst online: 30-08 21:36
Probeer eens in de If ... Then ... constructies een response.write te doen zodat je weet of hij wel correct valideerd?

[edit]
btw: mischien is het handiger om een "select case" constructie te gebruiken i.p.v. 30 maal de zelfde "If ... Then"

  • ArjanC
  • Registratie: Juli 2001
  • Laatst online: 26-01 17:16
ik heb dit onderaan mijn pagina gezet :
code:
1
Response.Write(Request.Form("<BR><BR>ADUA"))

en daar geeft hij precies de goede waarde..

is hij hoofdletter gevoelig?

  • KoeKk
  • Registratie: September 2000
  • Laatst online: 30-08 21:36
Ik bedoel eigenlijk dit:
code:
1
2
3
4
if Request.Form("ADUA") = "AdNewuser" then
  recordset("AdNewuser") = checked
  Response.Write "In de If: AdNewuser"
end if

en het is idd Hoofdletter gevoelig

  • ArjanC
  • Registratie: Juli 2001
  • Laatst online: 26-01 17:16
gvd, alles nagekeken hoofdletters veranderd en werken :(

weer 1,5 uur naar de klote. |:(

  • KoeKk
  • Registratie: September 2000
  • Laatst online: 30-08 21:36
Op dinsdag 16 april 2002 11:53 schreef burp2001 het volgende:
gvd, alles nagekeken hoofdletters veranderd en werken :(

weer 1,5 uur naar de klote. |:(
Ach, hij werkt da's belangrijk ;)
Pagina: 1