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 &
> > "')"
> >
>
>