Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

contar registros

Estas en el tema de contar registros en el foro de Mysql en Foros del Web. Hola Estoy intentado contar el total de registros que hay dentro de todas la tablas de una base de datos... Lo que he hecho es ...
  #1 (permalink)  
Antiguo 22/02/2006, 11:25
 
Fecha de Ingreso: enero-2006
Mensajes: 71
Antigüedad: 18 años, 2 meses
Puntos: 0
contar registros

Hola

Estoy intentado contar el total de registros que hay dentro de todas la tablas de una base de datos... Lo que he hecho es esto:

<?
$dbname = 'db';

if (!mysql_connect('localhost', 'usuario', 'pass')) {
echo 'Could not connect to mysql';
exit;
}

$sql = "SHOW TABLES FROM $dbname";
$result = mysql_query($sql);

if (!$result) {
echo "DB Error, could not list tables\n";
echo 'MySQL Error: ' . mysql_error();
exit;
}

while ($row = mysql_fetch_row($result)) {


$link = mysql_connect("localhost", "usuario", "pass");
mysql_select_db("db", $link);
$result2 = mysql_query("SELECT COUNT(*) FROM $row[0]", $link) or die (mysql_error()) ;
echo mysql_result($result2,0,0);
}
?>

Pero con esto lo que consigo es que me ponga la suma total de registros de las tablas... NO ME LOS SUMA.. Me pone total de una tabla a continuación total de la siguiente, etc... Queda algo así:

29384509287502854029854205420345245191823123412341 324

Claro esto no me sirve de nada, lo que necesito es que me sume esos valores y me de una única cifra

Como puedo hacer esto.

Gracias

Gracias
  #2 (permalink)  
Antiguo 22/02/2006, 11:42
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 2 meses
Puntos: 772
Hola enero

En tu código no estás sumando nada, solo estás escribiendo los resultados en la pantalla (echo mysql_result($result2,0,0);) Prueba con esto:
Código:
$total=0;
while ($row = mysql_fetch_row($result)) {
$link = mysql_connect("localhost", "usuario", "pass");
mysql_select_db("db", $link);
$result2 = mysql_query("SELECT COUNT(*) FROM $row[0]", $link) or die (mysql_error()) ;
$total+= mysql_result($result2,0,0);
}
echo $total;
?>
Saludos,
  #3 (permalink)  
Antiguo 22/02/2006, 16:46
 
Fecha de Ingreso: enero-2006
Mensajes: 71
Antigüedad: 18 años, 2 meses
Puntos: 0
Perfecto, problema resuelto...

Muchas gracias...
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 18:28.