mysql_query() returns returns true, but mysql_num_rows() and mysql_fetch_array() give "not a valid r
Posted
by zlance4012
on Stack Overflow
See other posts from Stack Overflow
or by zlance4012
Published on 2010-06-09T19:08:55Z
Indexed on
2010/06/09
19:12 UTC
Read the original article
Hit count: 95
Here is the code in question:
-----From index.php-----
require_once('includes/DbConnector.php');
// Create an object (instance) of the DbConnector $connector = new DbConnector();
// Execute the query to retrieve articles $query1 = "SELECT id, title FROM articles ORDER BY id DESC LIMIT 0,5"; $result = $connector->query($query1);
echo "vardump1:"; var_dump($result); echo "\n";
/(!line 17!)/ echo "Number of rows in the result of the query:".mysql_num_rows($result)."\n"; // Get an array containing the results. // Loop for each item in that array
while ($row = $connector->fetchArray($result)){
echo '
'; echo $row['title']; echo '
';-----end index.php-----
-----included DbConnector.php-----
$settings = SystemComponent::getSettings();
// Get the main settings from the array we just loaded $host = $settings['dbhost']; $db = $settings['dbname']; $user = $settings['dbusername']; $pass = $settings['dbpassword'];
// Connect to the database $this->link = mysql_connect($host, $user, $pass); mysql_select_db($db); register_shutdown_function(array(&$this, 'close'));
} //end constructor
//* Function: query, Purpose: Execute a database query * function query($query) {
echo "Query Statement: ".$query."\n";
$this->theQuery = $query;
return mysql_query($query, $this->link) or die(mysql_error());
}
//* Function: fetchArray, Purpose: Get array of query results * function fetchArray($result) {
echo "<|"; var_dump($result); echo "|> \n";
/(!line 50!)/$res= mysql_fetch_array($result) or die(mysql_error());
echo $res['id']."-".$res['title']."-".$res['imagelink']."-".$res['text'];
return $res; } -----end DbConnector.php-----
-----Output-----
Query Statement: SELECT id, title FROM articles ORDER BY id DESC LIMIT 0,5 vardump1:bool(true) PHP Error Message
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /path to/index.php on line 17
Number of rows in the result of the query: <|bool(true) |>
PHP Error Message
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /path to/DbConnector.php on line 50
© Stack Overflow or respective owner