2010-08-24 4 views
0

Comment trouver mysql_num_rows pour un objet.mysql_num_rows pour un objet mysql?

Cela donne une erreur:

$query = mysql_query($sql) or die(mysql_error()); 
$row = mysql_fetch_object($query); 

echo mysql_num_rows($row); 

Warning: mysql_num_rows() expects parameter 1 to be resource, object given

+1

duplication possible de [mysql_fetch_array() s'attend à ce que le paramètre 1 soit resource, booléen donné dans select] (http://stackoverflow.com/questions/2973202/mysql-fetch-array-expects-parameter-1-to-be -resource-boolean-given-in-select) – thecodeparadox

Répondre

6

mysql_num_rows attend un jeu de résultatsresource (l'ensemble des résultats retournés par mysql_query, à savoir ce qui est de se retrouver dans la variable $query.), Pas une seule rangée.

Cela fonctionnerait:

$result_set = mysql_query($sql) or die(mysql_error()); 
$num_rows = mysql_num_rows($result_set); 
$row = mysql_fetch_object($result_set); 
0
$query = mysql_query($sql) or die(mysql_error()); 
echo mysql_num_rows($query); 

dire que vous devez passer la valeur de retour de mysql_query à mysql_num_rows.

0

Facile. Selon la page de manuel , auquel les bons programmeurs se réfèrent toujours, un objet contient une ligne.
Alors que mysql_num_rows() fonctionne avec la ressource de jeu de résultats.

Aussi je dois dire que d'après mon expérience il y a très peu d'utilisation si une telle fonction. Je peux à peine trouver un cas où vous en auriez besoin.

+1

La condescendance est inutile et contre-productive. – Amber

+0

Bien dit @Amber – Jonathan

Questions connexes