I am building a project and learning PHP/MySQL at the same time. Here is my code: $query = "SELECT suite, title, category, our_url FROM business ORDER BY category ASC"; $result = mysql_query($query); $num_results = mysql_num_rows($result); <table width="100%"> <tr><td width="63"><u>Suite</u></td><td><u>Business</u></td><td><u>Category</u></td><td> <u>Link</u></td></tr> <? for ($i=0; $i <$num_results; $i++) { $row = mysql_fetch_array($result); echo "<tr><td>"; echo htmlspecialchars(stripslashes($row["suite"])); echo "</td><td>"; echo htmlspecialchars(stripslashes($row["title"])); echo "</td><td>"; echo htmlspecialchars(stripslashes($row["category"])); echo "</td><td>"; echo htmlspecialchars(stripslashes($row["our_url"])); echo "</td></tr>"; } ?> </table> I am getting the following error: ===== Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in [b]my directory[/b] on line 47 ===== I have already connected to my database. I am using PHP 4. Also, even if I try to replace mysql_num_rows($result) with "2" , I get the same errors except with mysql_fetch_array(): . Why is this happening? Thanks.