"Tamara Temple" <tamouse.lists@xxxxxxxxx> wrote in message news:C6993909-DD90-4F52-BF6B-AB888C2814A5@xxxxxxxxxxxx > > On Dec 19, 2010, at 9:46 AM, Gary wrote: > >> I have an issue that the first record in a query is not being displayed. >> It >> seems that the first row in alphabetical order is not being brought to >> the >> screen. >> >> I have run the query in the DB and it displays the correct result, so it >> has >> to be in the php. >> >> I have a MySQL DB that lists beers. I have a column for 'type' of beer >> (imported, domestic, craft, light). The queries: >> >> $result = MySQL_query("SELECT * FROM beer WHERE type = 'imported' AND >> stock >> = 'YES' ORDER by beername "); >> >> When I run the query >> >> if (mysql_num_rows($result) == !'0') { >> $row = mysql_fetch_array($result); >> >> echo '<h3>Imported Beers</h3>'; >> echo '<table width="100%" border="0" cellspacing="1" cellpadding="1" >> id="tableone" summary=""> >> >> <th>Beer</th> >> <th>Maker</th> >> <th>Type</th> >> <th>Singles</th> >> <th>6-Packs</th> >> <th>Cans</th> >> <th>Bottles</th> >> <th>Draft</th> >> <th>Size</th> >> <th>Description</th>'; >> >> while ($row = mysql_fetch_array($result)) { >> >> echo '<tr ><td>' . $row['beername'].'</td>'; >> echo '<td>' . $row['manu'] . '</td>'; >> echo '<td>' . $row['type'] . '</td>'; >> echo '<td width="40">' . $row['singles'] . '</td>'; >> echo '<td width="20">' . $row['six'] . '</td>'; >> echo '<td width="40">' . $row['can'] . '</td>'; >> echo '<td width="20">' . $row['bottles'] . '</td>'; >> echo '<td width="40">' . $row['tap'] . '</td>'; >> echo '<td>' . $row['size'] . '</td>'; >> echo '<td>' . $row['descrip'] . '</td>'; >> '</tr>'; >> } >> echo '</table><br />'; >> >> } >> >> All but the first row in alphabetical order are displayed properly. >> >> Can anyone tell me where I am going wrong? >> -- >> Gary >> >> BTW, I do have a bonus question that is about javascript in this same >> file, >> so if anyone want to take a stab at that, I'll be happy to post it. >> > > This code will totally eliminate the first row of data. > >> if (mysql_num_rows($result) == !'0') { >> $row = mysql_fetch_array($result); > > Fetches the first row, but is not output. Because: > >> while ($row = mysql_fetch_array($result)) { > > Fetches the second row before you do any output of the data. > > Eliminate the first fetch_array and you're code should work fine. > > BTW, if you put the <td> attributes 'width="n"' in the preceding <th> > tags, you won't have to output them for each row. You should also put the > units those numbers are associated with. > > Tamara Thank you for your help and thank you for the explaination. I removed the line and it works fine. I dont remember where or why I had that line in there, it is code that I have "recycled" for a while now. Gary __________ Information from ESET Smart Security, version of virus signature database 5716 (20101219) __________ The message was checked by ESET Smart Security. http://www.eset.com -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php