Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Programming > ASP .Net > ASP General > dynamic checkboxes

Reply
Thread Tools

dynamic checkboxes

 
 
middletree
Guest
Posts: n/a
 
      12-09-2003
I have a page which has something like 100 checkboxes, in three categories,
so I chose to build the checkboxes into the page like this:

<%
strSQL = "SELECT PeopleID, PeopleDesc "
strSQL = strSQL & "FROM People "
strSQL = strSQL & "ORDER BY PeopleDesc"
set rs = conn.execute(strSQL)

strTempRow = 0
While Not RS.EOF
Response.Write "<td colspan=2><input type=checkbox
value='"&RS.Fields("PeopleID")&"'>"&RS.Fields("Peo pleDesc")&"</td>"
strTempRow = strTempRow + 1
If strTempRow mod 2 = 0 then
response.write "</tr><tr>"
Else
End if
RS.MoveNext
WEND
RS.Close
set RS = nothing

%>


As you can see, I don't have a name for the checkbox, but of course, I need
to have that, so that on the next page, I can retrieve the value and insert
it into a database, if it was selected.

How is this handled on this page? How is it handled on the next page? I am
at a loss to figure this out.


 
Reply With Quote
 
 
 
 
Roji. P. Thomas
Guest
Posts: n/a
 
      12-09-2003
Response.Write "<td colspan=2><input type=checkbox
name = 'chkSomething" & strTempRow & "'
value='"&RS.Fields("PeopleID")&"'>"&RS.Fields("Peo pleDesc")&"</td>"
strTempRow = strTempRow + 1


--
Roji. P. Thomas
SQL Server Programmer
--------------------------------------
"middletree" <> wrote in message
news:%...
> I have a page which has something like 100 checkboxes, in three

categories,
> so I chose to build the checkboxes into the page like this:
>
> <%
> strSQL = "SELECT PeopleID, PeopleDesc "
> strSQL = strSQL & "FROM People "
> strSQL = strSQL & "ORDER BY PeopleDesc"
> set rs = conn.execute(strSQL)
>
> strTempRow = 0
> While Not RS.EOF
> Response.Write "<td colspan=2><input type=checkbox
> value='"&RS.Fields("PeopleID")&"'>"&RS.Fields("Peo pleDesc")&"</td>"
> strTempRow = strTempRow + 1
> If strTempRow mod 2 = 0 then
> response.write "</tr><tr>"
> Else
> End if
> RS.MoveNext
> WEND
> RS.Close
> set RS = nothing
>
> %>
>
>
> As you can see, I don't have a name for the checkbox, but of course, I

need
> to have that, so that on the next page, I can retrieve the value and

insert
> it into a database, if it was selected.
>
> How is this handled on this page? How is it handled on the next page? I

am
> at a loss to figure this out.
>
>



 
Reply With Quote
 
 
 
 
TomB
Guest
Posts: n/a
 
      12-09-2003
I do one of two things.

1) <input type=checkbox name=Person<%=trim(RS.Fields("PeopleID"))%>>
which gives <input type=checkbox name=Person1>
then on the following page, I requery and check each value

2) <input type=checkbox name=Person value="<%=RS.Fields("PeopleID")%>">
which gives <input type=checkbox name=Person value="1">
then on the following page, I Request.Form("Person") which gives me a comma
separated string of the selected values. So if 1, 6 and 8 were picked I'd
get "1, 6, 8" which is easily popped into an array using SPLIT.
I can also use that handy dandy little string in my SQL Statement,
sPerson=Request.Form("Person")
sSQL="UPDATE People SET Deleted=1 WHERE PeopleID in ('" & sPerson & "')"
sSQL="UPDATE People SET Deleted=0 WHERE PeopleID not in ('" & sPerson &
"')"



I prefer to use method 2, but there are times when the 1st method is easier.


"middletree" <> wrote in message
news:%...
> I have a page which has something like 100 checkboxes, in three

categories,
> so I chose to build the checkboxes into the page like this:
>
> <%
> strSQL = "SELECT PeopleID, PeopleDesc "
> strSQL = strSQL & "FROM People "
> strSQL = strSQL & "ORDER BY PeopleDesc"
> set rs = conn.execute(strSQL)
>
> strTempRow = 0
> While Not RS.EOF
> Response.Write "<td colspan=2><input type=checkbox
> value='"&RS.Fields("PeopleID")&"'>"&RS.Fields("Peo pleDesc")&"</td>"
> strTempRow = strTempRow + 1
> If strTempRow mod 2 = 0 then
> response.write "</tr><tr>"
> Else
> End if
> RS.MoveNext
> WEND
> RS.Close
> set RS = nothing
>
> %>
>
>
> As you can see, I don't have a name for the checkbox, but of course, I

need
> to have that, so that on the next page, I can retrieve the value and

insert
> it into a database, if it was selected.
>
> How is this handled on this page? How is it handled on the next page? I

am
> at a loss to figure this out.
>
>



 
Reply With Quote
 
middletree
Guest
Posts: n/a
 
      12-09-2003
Huh? I don't understand. How does this give each checkbox a unique name?

And how do I capture it on the next page?


"Roji. P. Thomas" <> wrote in message
news:...
> Response.Write "<td colspan=2><input type=checkbox
> name = 'chkSomething" & strTempRow & "'
> value='"&RS.Fields("PeopleID")&"'>"&RS.Fields("Peo pleDesc")&"</td>"
> strTempRow = strTempRow + 1
>
>
> --
> Roji. P. Thomas
> SQL Server Programmer
> --------------------------------------
> "middletree" <> wrote in message
> news:%...
> > I have a page which has something like 100 checkboxes, in three

> categories,
> > so I chose to build the checkboxes into the page like this:
> >
> > <%
> > strSQL = "SELECT PeopleID, PeopleDesc "
> > strSQL = strSQL & "FROM People "
> > strSQL = strSQL & "ORDER BY PeopleDesc"
> > set rs = conn.execute(strSQL)
> >
> > strTempRow = 0
> > While Not RS.EOF
> > Response.Write "<td colspan=2><input type=checkbox
> > value='"&RS.Fields("PeopleID")&"'>"&RS.Fields("Peo pleDesc")&"</td>"
> > strTempRow = strTempRow + 1
> > If strTempRow mod 2 = 0 then
> > response.write "</tr><tr>"
> > Else
> > End if
> > RS.MoveNext
> > WEND
> > RS.Close
> > set RS = nothing
> >
> > %>
> >
> >
> > As you can see, I don't have a name for the checkbox, but of course, I

> need
> > to have that, so that on the next page, I can retrieve the value and

> insert
> > it into a database, if it was selected.
> >
> > How is this handled on this page? How is it handled on the next page? I

> am
> > at a loss to figure this out.
> >
> >

>
>



 
Reply With Quote
 
middletree
Guest
Posts: n/a
 
      12-09-2003
Ok, this looks like something I can use. Just help me understand a little
bit more, though. I got everything you said through "1,6,8", but then I got
lost. Not sure how arrays work, have tried to work with them before, but
wasn't successful. But I could use your SQL method which you have
afterward, but I don't understand the deleted part.

Just so I'm clear, the People table is one table, and it will be pretty
static. The values from this page will be stored in a composite table, which
will have the individual's ID from the Personal table, and then the PeopleID
from the People table (People refers to which people group would you like to
work with: children, prisoners, elderly, etc.)--go to
www.middeltree.net/shape.htm for an html version of this page I'm working on

So I'd want to store some other info which is typed by the user, into the
Personal table, then store the checkbox stuff into the composite table.

Having said that, I appreciate what you have shown me about how you can give
all those checkboxes the same name and a comma-delimited string will come
out, just now sure how I can request that, split it, and insert it on the
next page.


"TomB" <> wrote in message
news:#...
> 2) <input type=checkbox name=Person value="<%=RS.Fields("PeopleID")%>">
> which gives <input type=checkbox name=Person value="1">
> then on the following page, I Request.Form("Person") which gives me a

comma
> separated string of the selected values. So if 1, 6 and 8 were picked I'd
> get "1, 6, 8" which is easily popped into an array using SPLIT.
> I can also use that handy dandy little string in my SQL Statement,
> sPerson=Request.Form("Person")
> sSQL="UPDATE People SET Deleted=1 WHERE PeopleID in ('" & sPerson & "')"
> sSQL="UPDATE People SET Deleted=0 WHERE PeopleID not in ('" & sPerson &
> "')"
>



 
Reply With Quote
 
TomB
Guest
Posts: n/a
 
      12-11-2003
Ok, first off I'd expect you to spell middletree correctly

1) the reason for the DELETE was that I didn't know what you were using it
for. I have an administrative page where the administrator adds or removes
staff. Rather than actually delete the record, I just have a field called
Deleted which is normally set to 0 (false) and when the staff is deleted it
is set to 1 (true). Using my method, it would set all of the "selected"
staff to 1 and the unselected to 0. Yours doesn't appear to need that, as
you are doing an INSERT (right?) So for your situation you could split it
into an array like so.......

' I'm going to assume that 3=Young Married, 6=College and 7=Homosexual
' and that these are the choices selected

sPeopleGroups=Request.Form("PeopleGroups")
arrPeopleGroups=SPLIT(sPeopleGroups,",")

'At this point I have an array with three elements
'arrPeopleGroups(0)=3
'arrPeopleGroups(1)=6
'arrPeopleGroups(2)=7
'So you could use the array to create a loop of Insert statements

For iLoop = 0 to UBound(arrPeopleGroups)
sSQL="INSERT INTO tblPeopleGroupsSelected (parentID, selectedID)
VALUES(" & lngIdentity & ", " & arrPeopleGroups(iLoop) & ")"
connectionObject.Execute sSQL
Next

'The above would create and execute three sql statements. I've assumed that
lngIdentity was created earlier in the page, to represent the parent tables
identity value.


For what you are doing though, I don't think you need an array. Assuming
that the values (Young Married, etc.) are coming from a table (let's say
tblPeopleGroups) then you can use
INSERT INTO tblPeopleGroupsSelected (parentID, selectedID) SELECT 999,
peopleGroupID FROM tblPeopleGroups WHERE peopleGroupID in (3, 6, 7)

Where 999 is the Identity value from the parent table.

OK. I've just reread your post. My tblPeopleGroupsSelected would be what
you referred to as "composite table." I would have that as a one-to-many
table (one Person - many Groups) which would consist of two fields as the Pr
imaryKey. PeopleID and GroupID - where PeopleID is a foreign key linked to
your People table and GroupID is a foreign key linked to your
tblPeopleGroups table.

So if I was number 4 and I wanted to be hooked up with 3,6 and 7 then the
table would look like.....
PeopleID GroupID
4 3
4 6
4 7

I think that'd do what you need.

TOm B



"middletree" <> wrote in message
news:O5j%...
> Ok, this looks like something I can use. Just help me understand a little
> bit more, though. I got everything you said through "1,6,8", but then I

got
> lost. Not sure how arrays work, have tried to work with them before, but
> wasn't successful. But I could use your SQL method which you have
> afterward, but I don't understand the deleted part.
>
> Just so I'm clear, the People table is one table, and it will be pretty
> static. The values from this page will be stored in a composite table,

which
> will have the individual's ID from the Personal table, and then the

PeopleID
> from the People table (People refers to which people group would you like

to
> work with: children, prisoners, elderly, etc.)--go to
> www.middeltree.net/shape.htm for an html version of this page I'm working

on
>
> So I'd want to store some other info which is typed by the user, into the
> Personal table, then store the checkbox stuff into the composite table.
>
> Having said that, I appreciate what you have shown me about how you can

give
> all those checkboxes the same name and a comma-delimited string will come
> out, just now sure how I can request that, split it, and insert it on the
> next page.
>
>
> "TomB" <> wrote in message
> news:#...
> > 2) <input type=checkbox name=Person

value="<%=RS.Fields("PeopleID")%>">
> > which gives <input type=checkbox name=Person value="1">
> > then on the following page, I Request.Form("Person") which gives me a

> comma
> > separated string of the selected values. So if 1, 6 and 8 were picked

I'd
> > get "1, 6, 8" which is easily popped into an array using SPLIT.
> > I can also use that handy dandy little string in my SQL Statement,
> > sPerson=Request.Form("Person")
> > sSQL="UPDATE People SET Deleted=1 WHERE PeopleID in ('" & sPerson & "')"
> > sSQL="UPDATE People SET Deleted=0 WHERE PeopleID not in ('" & sPerson &
> > "')"
> >

>
>



 
Reply With Quote
 
 
 
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Events from dynamic checkboxes sometimes handled the wrong way galien8@zonnet.nl ASP .Net 0 08-13-2008 04:08 PM
Dynamic checkboxes and selection sck10 ASP .Net 2 05-03-2008 01:13 PM
count dynamic checkboxes Mr. SweatyFinger ASP .Net 3 12-01-2006 12:32 PM
Revised: A form -to- dynamic form -to- dynamic checkboxes pizzy Javascript 7 03-23-2005 10:53 PM
Dynamically adding checkboxes to a dynamic datagrid kw ASP .Net Datagrid Control 1 07-22-2004 03:32 AM



Advertisments
 



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 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57