Basic cfloop question
I have three tables: People, PhoneNumbers, and EmailAddresses. They are tied together with a field called PersonID. I want to have a list of names with the phone numbers and email addresses listed below. Example:
John Doe
(212) 222-2222
(917) 111-1111
john@johndoe.com
Jane Doe
(241) 555-5555
jane@janedoe.com
Right now, I'm using:
<cfquery name="People" datasource="MyDatasource">
SELECT People.FirstName, People.LastName
FROM People
</cfquery>
<cfquery name="PhoneNumbers" datasource="MyDatasource">
SELECT PhoneNumbers.PhoneNumber
FROM PhoneNumbers
WHERE PhoneNumbers.PersonID = #qPeople.PersonID#
</cfquery>
<cfquery name="EmailAddresses" datasource="MyDatasource">
SELECT EmailAddresses.EmailAddress
FROM EmailAddresses
WHERE EmailAddresses.PersonID = #qPeople.PersonID#
</cfquery>
In the body I have:
<table border="0" cellpadding="5">
<cfoutput query="qPeople">
<tr>
<td>
#qPeople.FirstName# #qPeople.LastName#<BR>
<cfloop query="qPhoneNumbers">#qPhoneNumbers.PhoneNumber#<BR></cfloop>
<cfloop query="qEmailAddresses">#qEmailAddresses.EmailAddress#<BR></cfloop>
</td>
</tr>
</cfoutput>
</table>
I'm doing something wrong because the loop only returns the records of the first person in the People query. Thanks in advance for any assistance.
