mysqli_num_rows - cuenta mysql en variable PHP
mysql_num_rows php 7 (2)
Digamos que tenemos la siguiente consulta:
SELECT DISTINCT COUNT(`users_id`) FROM `users_table`;
esta consulta devolverá el número de usuarios de una tabla. Necesito pasar este valor a una variable de PHP. Estoy usando esto:
$sql_result = mysql_query($the_query_from_above) or die(mysql_error());
if($sql_result)
{
$nr_of_users = mysql_fetch_array($sql_result);
}
else
{
$nr_of_users = 0;
}
por favor corrija mi código donde lo crea necesario.
¿Cuál es el mejor enfoque? ¿Cómo recomiendas hacer esto?
Me gusta esto:
// Changed the query - there''s no need for DISTINCT
// and aliased the count as "num"
$data = mysql_query(''SELECT COUNT(`users_id`) AS num FROM `users_table`'') or die(mysql_error());
// A COUNT query will always return 1 row
// (unless it fails, in which case we die above)
// Use fetch_assoc for a nice associative array - much easier to use
$row = mysql_fetch_assoc($data);
// Get the number of uses from the array
// ''num'' is what we aliased the column as above
$numUsers = $row[''num''];
Además, una alternativa usando mysqli, que deberías usar de todos modos para la interpolación de parámetros:
$statement = $connection->prepare($the_query_from_above);
$statement->execute();
$statement->bind_result($nr_of_users);
$statement->fetch();