Aimee,
Here's one possible way:
The form fields for the addresses, all named "address", will produce
a comma-delimited list with as many elements as people. That is,
even if some of the address fields are blank, the form will still pass
those to the action template.
I assume you're also using a unique ID number for each contact,
so you could populate the initial form with hidden input fields, like
this, to pass the ID numbers retrieved via your second query:
<INPUT TYPE="hidden" NAME="ContactID"
VALUE="#ContactID#">
Then you should be able to loop through the ContactIDs using LIST
functions, something like this to save the info:
<CFSET Counter=0>
<CFLOOP INDEX="ThisContactID" LIST="#Form.ContactID#">
<CFSET Counter=Counter+1>
<CFQUERY NAME="SaveContact" DATASOURCE="yourdb">
UPDATE Contacts
SET Name="#ListGetAt(Form.Name, Counter)#",
Address="#ListGetAt(Form.Address, Counter)#"
WHERE ContactID=#ThisContactID#
</CFQUERY>
</CFLOOP>
ListGetAt combined with the Counter number will keep the
information in sync...
Gene Kraybill
LPW & Associates
Mansfield, PA
On 21 Jun 2001, at 20:27, Aimee Abbott wrote:
>
> Hello everyone!
>
> I have a database of companys, names, contacts and addresses. Not all
> companys have contact addresses. I am setting up a form that will allow
> people to come and change their address. They will get to the form by
> entering a url with a primary key at the end of it. This will query up the
> company and then a second query will get the people. The second gets the
> contact names and addresses -- there can be as many as a dozen
> contacts. That is the one I am having trouble with. What I have done is
> set it up so (in simple form)
>
> <form action...whatever>
> <cfoutput query="first">
> <!--- company info up here. Only one company per web page. --->
> </cfoutput>
>
> <cfoutput query="second">
> name: <input type=text name=person value=#name#>
> address: <input type=text name=address value=#address#>
> </cfoutput>
>
> </form>
> Now, like I said there can be a lot of contact names.
>
> So, then on the next page where I save it in the database, what do I do? I
> get the information in the form of a list. Where
> #name#=bob, mary, alice, harry, john
> but not everyone has an address so I might get
> #address#=chicago, minneapolis, rome
>
> I need to some how match these up somehow and update the record. Any idea
> how I can go about doing this?
>
> I have thought about the first page having some sort of number appended on
> to the end of the variable name so the form would somehow have name1,
> name2, name3, name4 but I don't actually know how to do that.
>
> Or from the second page, can I access individual list elements? And even
> if I could, how could I know that bob is from chicago, mary is blank and
> alice is from minneapolis?
>
> If I haven't explained this well enough please let me know!
>
> Thanks much!
>
>
>
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Structure your ColdFusion code with Fusebox. Get the official book at
http://www.fusionauthority.com/bkinfo.cfm
Archives: http://www.mail-archive.com/[email protected]/
Unsubscribe: http://www.houseoffusion.com/index.cfm?sidebar=lists