problem with a while loop

From: Date: Thu, 06 May 2004 18:25:56 +0000
Subject: problem with a while loop
Groups: php.general 
Request: Send a blank email to php-general+get-185546@lists.php.net to get a copy of this message
From: jmays@jmays.com Subject: problem with a while loop Date: May 6, 2004 11:25:28 AM EDT To: php-general-digest@lists.php.net Hey everybody! I am new to php (and mySQL) and I am working on a php page that links up to a mySQL database. My current code works up to a point, BUT what happens is that I try to have a while loop and check a variable with an inner while loop but it only catches after the first complete cycle. Basically, some producers will only call up one row, but you always get 2 at the minimum with this code below. I have tried lots of different things which all lead to the second row endlessly repeating or the page not loading at all. Any ideas? Please email me directly since I am on the digest. Thanks Jessica (Also, I am new to this list and if this email is in the wrong format I apologize.) CODE : <? $query = "select * from wine where REGION like 'California' order by PRODUCE,DESCRIPT,VINTAGE"; $result = mysql_query($query); $num_results = mysql_num_rows($result); echo "<p>Number of wines found: ".$num_results."</p>"; $i =0; while ($i < $num_results) { $row = mysql_fetch_array($result); $producer = $row["PRODUCE"]; echo "<table width=\"400\" border=\"0\" cellspacing=\"0\" cellpadding=\"2\" bgcolor=\"#ffffcc\"><tr bgcolor=\"#FFFFFF\"><td colspan=\"4\" class=\"bigtext\">";
     	echo stripslashes($row["PRODUCE"]);
echo "</td></tr>"; $color = "#ffffcc"; echo "<tr bgcolor=$color><td width=\"50\">"; // id number
     	echo stripslashes($row["INVID"]);
echo "</td><td>"; // vintage
    	 echo stripslashes($row["VINTAGE"]);
    	 echo " ";
// description
     	echo stripslashes($row["DESCRIPT"]);
     	echo " ";
// bottle size if ($row["BOTSIZE"] != "750ml"){ echo "<span class=\"bottlesize_sm\">"; echo stripslashes($row["BOTSIZE"]); echo "</span>"; } if ($row["NOTES"] != ""){ echo "<br><i>"; echo stripslashes($row["NOTES"]); echo "</i>"; } echo "</td>"; // list price echo "<td align=\"right\" width=\"60\">"; echo stripslashes($row["WINENUM"]); echo "</td>"; // sale price echo "<td align=\"right\" width=\"60\">"; echo stripslashes($row["SALEPRICE"]); echo "</td>"; while ( $producer == $row["PRODUCE"]) { if ($color == "#ccdd99") $color = "#ffffcc"; else $color = "#ccdd99"; $row = mysql_fetch_array($result); echo "<tr bgcolor=$color><td width=\"50\">"; // id number
     			echo stripslashes($row["INVID"]);
echo "</td><td>"; // vintage
    			 echo stripslashes($row["VINTAGE"]);
    			 echo " ";
// description
     			echo stripslashes($row["DESCRIPT"]);
     			echo " ";
// bottle size if ($row["BOTSIZE"] != "750ml"){ echo "<span class=\"bottlesize_sm\">"; echo stripslashes($row["BOTSIZE"]); echo "</span>"; } if ($row["NOTES"] != ""){ echo "<br><i>"; echo stripslashes($row["NOTES"]); echo "</i>"; } echo "</td>"; // list price echo "<td align=\"right\" width=\"60\">";
    			 echo stripslashes($row["WINENUM"]);
echo "</td>"; // sale price echo "<td align=\"right\" width=\"60\">";
    			 echo stripslashes($row["SALEPRICE"]);
echo "</td>"; ++$i; } echo "</tr></table><p>&nbsp;</p>"; ++$i; } ?>

« previous php.general (#185546) next »