addyp Posted October 19, 2010 Share Posted October 19, 2010 hi guys I am having trouble displaying a table in a mySQL database i get the error message Warning: mysqli_fetch_row() expects parameter 1 to be mysqli_result, boolean given in /home/students/accounts/s7188633/hit3323/www/htdocs/Assiment2V2/main.php on line 47 Warning: mysqli_fetch_row() expects parameter 1 to be mysqli_result, boolean given in /home/students/accounts/s7188633/hit3323/www/htdocs/Assiment2V2/main.php on line 53 these are the two line that it realtes to row 47: $Row = mysqli_fetch_row($result); row 53: $Row = mysqli_fetch_row($result); below is all the code if you wanted to look at it, thanks <?php $choice = addslashes ($_POST["selection"]); { $DBConnect = @mysqli_connect("neptune.it.swin.edu.au", "*****", "***") Or die("<p>Unable to connect to the database server.</p>" . "<p>Error code " . mysqli_connect_errno() . ": " . mysqli_connect_error()) . "</p>"; $DBName = "*****_db"; if (!@mysqli_select_db($DBConnect, $DBName)) echo "<p>The database is not available.</p>"; $SQLstring = "SELECT * FROM Books";// WHERE category = 'Programing'"; $QueryResult = @mysqli_query($DBConnect, $SQLstring) Or die("<p>Unable to execute the query.</p>" . "<p>Error code " . mysqli_errno($DBConnect) . ": " . mysqli_error($DBConnect)) . "</p>"; $NumRows = mysqli_num_rows($QueryResult); if ($NumRows == 0) echo "<p>No records returned.</p>"; else { mysqli_select_db($DBConnect, $DBName); $SQLstring = "SELECT * FROM Books"; $result = @mysql_query($DBConnect, $SQLstring); $Row = mysqli_fetch_row($result); do { echo "<tr><td>{$Row[0]}</td>"; echo "<td>{$Row[1]}</td>"; echo "<td align='right'>{$Row[2]}</td>"; echo "<td align='right'>{$Row[3]}</td></tr>"; $Row = mysqli_fetch_row($result); } while ($Row); } } mysqli_close($DBConnect); ?> Quote Link to comment Share on other sites More sharing options...
hitman6003 Posted October 19, 2010 Share Posted October 19, 2010 Why are you executing the same query twice? The second time you are querying (for the exact same data) you are using "mysql_query", not "mysqli_query". Quote Link to comment Share on other sites More sharing options...
addyp Posted October 19, 2010 Author Share Posted October 19, 2010 thanks, changing to a mysqli querry fixed it, however it is now displaying one row in the table as oppose to them all Quote Link to comment Share on other sites More sharing options...
objnoob Posted October 19, 2010 Share Posted October 19, 2010 while ( $Row = mysqli_fetch_row($result)); { echo "<tr><td>{$Row[0]}</td>"; echo "<td>{$Row[1]}</td>"; echo "<td align='right'>{$Row[2]}</td>"; echo "<td align='right'>{$Row[3]}</td></tr>"; } 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.