StevenAFC Posted January 25, 2007 Share Posted January 25, 2007 Hi Im trying to display a certain number of results from my database, basically the last 10 entries. $result = mysql_query("SELECT * FROM tblNews LIMIT 0 , 10"); if (!$result) { echo("The database could not be accessed at the moment"); } else { $data = mysql_fetch_array($result); } while($row = mysql_fetch_array($result)) { echo $row['heading'] . '<br>'; }At the moment I dont get any results, where am I going wrong?Thanks Quote Link to comment Share on other sites More sharing options...
StevenAFC Posted January 25, 2007 Author Share Posted January 25, 2007 [code] if (!$result) { echo("The database could not be accessed at the moment"); } else { $data = mysql_fetch_array($result); } while ($row = mysql_fetch_assoc($result)) { echo ($row["heading"]); }[/code]I thought this would work but no joy so far. Quote Link to comment Share on other sites More sharing options...
tgavin Posted January 25, 2007 Share Posted January 25, 2007 It worked for me. All I did was change the table name and col name and I got a result.Silly question: is there data in the table? Quote Link to comment Share on other sites More sharing options...
StevenAFC Posted January 25, 2007 Author Share Posted January 25, 2007 Yeah Only 1 piece though, but if i echo ($data["heading"]; i get the first bit. So the query is working. Quote Link to comment Share on other sites More sharing options...
Tyche Posted January 26, 2007 Share Posted January 26, 2007 If you only have one record then you've already assigned it to the $data variableThe next mysql_fetch_array will return false because you have no more data so the echo is never processed. .. try[code]$result = mysql_query("SELECT * FROM tblNews LIMIT 0 , 10"); if (!$result) { echo("The database could not be accessed at the moment");} else { while($row = mysql_fetch_array($result)) { echo $row['heading']; }}[/code] Quote Link to comment Share on other sites More sharing options...
trq Posted January 26, 2007 Share Posted January 26, 2007 If you only expect one record do NOT use a while() loop.[code]<?php if ($result = mysql_query("SELECT * FROM tblNews LIMIT 0 , 10")) { if (mysql_num_rows($result)) { $row = mysql_fetch_array($result); echo $row['heading']; } else { echo "No results found"; } } else { echo "Query failed ".mysql_error(); }?>[/code] Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.