mysql_num_rows() returns the number of rows in a result set. This command is only valid for SELECT statements. To retrieve the number of rows affected by a INSERT, UPDATE or DELETE query, use mysql_affected_rows().
Note: If you use mysql_unbuffered_query(), mysql_num_rows() will not return the correct value until all the rows in the result set have been retrieved.
See also: mysql_affected_rows(), mysql_connect(), mysql_data_seek(), mysql_select_db(), and mysql_query().
For downward compatibility mysql_numrows() can also be used. This is deprecated however.