Why does this return Resource id #2? [duplicate]

Because you get a mysql ressource when you do a mysql_query().

Use something like mysql_fetch_assoc() to get the next row. It returns an array with the column names as indices. In your case it’s probably COUNT(*).

Here’s a fix and some minor improvements of your snippet:

$rt = mysql_query("SELECT COUNT(*) FROM persons") or die(mysql_error());
$row = mysql_fetch_row($rt);
if($row)
    echo "<h1>Number:</h1>" . $row[0];

If you need to get all rows of the resultset use this snippet:

while($row = mysql_fetch_assoc($rt)) {
    var_dump($row);
}

Leave a Comment