Multiple WHILE loops help
Posted on
16th Feb 2014 07:03 pm by
admin
Hi there. I'm writing an application that is pulling and displaying results for real estate listings and associated photographs. The output is using two MySQL querys and WHILE statements. The outer WHILE loop pulls listing information for all listings within a given category. This loop is working just fine.
The problem lies within the second, inner WHILE loop. The second loop pulls photograph information for each of the listings provided in the first loop. What's happening is; after each subsequent iteration of the first loop, the second loop is displaying all results of all previous second loops plus the current run. (Additionally, the first result of only the first run is displaying twice) Hopefully I can demonstrate better below.
Listing 1 information
(assuming Listing 1 has 2 photos)
Listing 1 photo 1, Listing 1 photo 1, Listing 1 photo 2 //for some reason the first photo of only the first listing is displayed twice
Listing 2 information
(assuming Listing 2 has 2 photos)
Listing 1 photo 1, Listing 1 photo 2, Listing 2 photo 1, Listing 2 photo 2
Listing 3 information
(assuming Listing 3 has 1 photo)
Listing 1 photo 1, Listing 1 photo 2, Listing 2 photo 1, Listing 2 photo 2, Listing 3 photo 1
Here is the code I'm using:
Code: $catlist = @mysql_query("SELECT * FROM category GROUP BY CatName ORDER BY CatName");
if (!$catlist) {
echo("<p>Error getting results: " . mysql_error . "</p>");
}
// display category listing
echo("<p align="center">| n");
while($pagerow = mysql_fetch_array($catlist)) {
$CatName=$pagerow["CatName"];
$CatID=$pagerow["CatID"];
$count = @mysql_query("SELECT * FROM CategoryLookup WHERE CatID='$CatID'");
if(!$count) {
echo ("<p>Could not count rows: " . mysql_error . "</p>");
}
$number = mysql_num_rows($count);
echo(" <a href='$PHP_SELF?cat=" . $CatID . "'>" . $CatName ." (" . $number . ")</a> |");
}
echo("</p>n");
if (isset($_GET['cat'])) {
$cat = $_GET['cat'];
$result = @mysql_query("SELECT * FROM CategoryLookup, Listing WHERE CategoryLookup.CatID='$cat' AND Listing.ID=CategoryLookup.ID");
if (!$result)
{
echo("<P>Error getting results: " . mysql_error . "</P>");
}
//Display contacts in paragraphs
//with delete and modify link beside each
while ( $row = mysql_fetch_array($result) )
{
$ID = $row["ID"];
$MLSNum = $row["MLSNum"];
$Price = $row["Price"];
$Status = $row["Status"];
//Removed for brevity
$Direction = $row['Direction'];
//Build output and remove empty lines
$output = '<p>';
if($MLSNum != '') {
$output .= '<strong style="font-size:120%;">' . $MLSNum . '</strong><br />';
}
if($Price != '') {
$output .= '$' . $Price . '<br />';
}
if($Status != '') {
$output .= $Status . '<br />';
}
//Again, removed for brevity
$output .= "<p>Directions:<br />" . $Direction . "</p>n";
//Start output display
echo("<table width='800' bgcolor='#DEDEDE'><tr><td>n");
echo("<table><tr><td valign="top">n");
echo $output;
echo("</td></tr>n");
//Start photograph display
echo("<tr><td colspan="2">n");
//###############################
//#####PROBLEM AREA STARTS HERE#######
//###############################
$photoresult = @mysql_query("SELECT Photo, Main FROM photos WHERE photos.MLSNum='$MLSNum' AND photos.ID='$ID'");
if (!$photoresult)
{
echo("<P>Error getting results: " . mysql_error . "</P>");
}
while ( $photorow = mysql_fetch_array($photoresult) )
{
$Photo = $photorow["Photo"];
$Main = $photorow["Main"];
$Timg='../pics/' . $Photo . '';
$photooutput .= " <a href="" . $Timg . ""><img src="RESIZE_IMAGE.PHP?image=" . $Timg . "" border="0" ";
if($Main=='Yes') {
$photooutput .= "style="border:2px solid #f00;" ";
}
$photooutput .= " /></a>n";
echo $photooutput;
}
//#########################
//########end phoblem area######
//##########################
echo("</td></tr></table>n");
//Finish output display
echo("</td>" .
"<td align='center'><p><a href='$current_url?delcontact=$ID'>Delete this listing?</a></p>n" .
"<p><a href='$current_url?modcontact=$ID'>Modify this listing?</a></p>n" .
"<p><a href='photos.php?ID=$ID&MLSNum=$MLSNum'>Add / Edit Photos</a></p>n" .
"</td></tr></table>
n");
echo $ID . " | " . $MLSNum;
}
} else {
echo("<p>Select a category above</p>n");
}
I must be missing something small but my lone set of eyeballs are going crazy.
Please help
No comments posted yet
Your Answer:
Login to answer
317
44
Other forums
Cursor statement failed with errors
Following statement failed with the errors.
cursor proj_cursor1 is (select projectID from
blank page.... nothing is happening.
I'm new to a lot of this but in the last 24hrs have learned a lot.
Installed latest version of my
Problem with variable declaration in switch statement
Hello, I am having some trouble assigning a value to a variable inside a switch statement. What I a
Forgot password won't work
My forgot password thing is not working properly. It is giving me this errorMailbox unavailable. The
how to hide input fields on selection screen using variant attribute
Hello all,
I want to know how to hide input fields on selection screen using variant attr
Estimations and Effort
HI Gurus,
Would like to know whether SAP have a provision for carrying out the Project es
need help in php variable
i have a php variable on one page
Code: [Select]$lastId = mysql_insert_id($db);
echo $lastId;<
BackButton Behaviour in AJAX
I have an ASPX Page AJAX Enabled!The page has a gridView and a DDL for filtering on it. The Gridview
issues verifying if user is logged in
I am having issues when a user logs in via asp Login control, the IsAuthenticated still seems to com
Character Sets/Collations Stuff
Can someone please give me a check list of things I must do to setup all the charset stuff for my ph