Foros del Web » Programando para Internet » PHP »

contar resultados

Estas en el tema de contar resultados en el foro de PHP en Foros del Web. como puedo hacerlo para que me cuente las "id"por ejemplo y me muestre el total de "comentarios"(por decir algo) que hay en la BD Gracias ...
  #1 (permalink)  
Antiguo 09/06/2004, 14:01
 
Fecha de Ingreso: mayo-2004
Mensajes: 571
Antigüedad: 19 años, 11 meses
Puntos: 0
contar resultados

como puedo hacerlo para que me cuente las "id"por ejemplo y me muestre el total de "comentarios"(por decir algo) que hay en la BD

Gracias :D
  #2 (permalink)  
Antiguo 09/06/2004, 14:14
 
Fecha de Ingreso: junio-2004
Mensajes: 101
Antigüedad: 19 años, 10 meses
Puntos: 0
Puedes usar el siguiente codigo
cuando hagas tu consula, ejemplo:

$result = mysql_query("SELECT comentario FROM TABLA WHERE id=$valor");
usas esta función para que te cuente el número de registro de tu tabla
$total = mysql_num_rows($result);

el resultado puede variar dependiendo del tipo de consulta que hagas
si consultas algún dato que cumpla una condición en particular.......

Saludos
  #3 (permalink)  
Antiguo 09/06/2004, 14:35
Avatar de Ricardo  
Fecha de Ingreso: febrero-2003
Ubicación: Capital Federal, Argentina
Mensajes: 60
Antigüedad: 21 años, 2 meses
Puntos: 0
O tambien podrias con la siguiente query

SELECT count(*) FROM tabla WHERE id=$valor
__________________
.:: globaldot ::. | diseñoweb
www.globaldot.com.ar
  #4 (permalink)  
Antiguo 09/06/2004, 14:55
 
Fecha de Ingreso: mayo-2004
Mensajes: 571
Antigüedad: 19 años, 11 meses
Puntos: 0
graicas a los dos ;) ahor mismo lo pruebo :D thanks!!!!!
  #5 (permalink)  
Antiguo 09/06/2004, 15:27
 
Fecha de Ingreso: mayo-2004
Mensajes: 571
Antigüedad: 19 años, 11 meses
Puntos: 0
me da erro pero no se porque me da que como siempre sera una chorrada

me da este error:
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in

y el codigo es asi:
Código PHP:
<? 
$host 
"localhost"
$user "mysql";
$pass "mysql";
$dbname "tablacomen"

$conecta mysql_connect($host,$user,$pass); 
mysql_select_db($dbname,$conecta);  
$result mysql_query("SELECT comentario FROM comentarios WHERE id=$valor");
$total mysql_num_rows($result);
        echo 

        <table> 
     <font class='texto'> $datos[$valor]</font>
        </table><br> 
        \n"

?>
thanks:D
  #6 (permalink)  
Antiguo 09/06/2004, 17:00
 
Fecha de Ingreso: junio-2004
Mensajes: 101
Antigüedad: 19 años, 10 meses
Puntos: 0
Seguro de estar usando tus propios datos :serio:
es tus datos de tu tabla y el nombre de tu tabla y no el que estoy poniendo como ejemplo

va de nuevo :-D

si tienes una tabla NOTICIAS
con campos
id, titulo,noticia,comentario

consulta:

$result = mysql_query("SELECT * FROM noticias");
$total = mysql_num_rows($result);

para mostrar el total:

<?=$total?>
o
echo "$total";

como veas....

Saludos:)
  #7 (permalink)  
Antiguo 10/06/2004, 02:48
 
Fecha de Ingreso: mayo-2004
Mensajes: 571
Antigüedad: 19 años, 11 meses
Puntos: 0
nop la tabla se llama comentarios ^^u tal como pone el ejemplo ahora probare haber de nuevo :D
  #8 (permalink)  
Antiguo 10/06/2004, 03:24
 
Fecha de Ingreso: mayo-2004
Mensajes: 571
Antigüedad: 19 años, 11 meses
Puntos: 0
aqui como queda actualmente:

Código PHP:
<?
$host 
"localhost"
$user "mysql";
$pass "mysql";
$dbname "tablacomen"

$conecta mysql_connect($host,$user,$pass); 
mysql_select_db($dbname,$conecta); 
$result mysql_query("SELECT * FROM comentarios WHERE id='$valor"); 
$total mysql_num_rows($result); 
        echo 
"$total";
?>
y me sigue dando el mismo error
  #9 (permalink)  
Antiguo 10/06/2004, 04:43
Avatar de living  
Fecha de Ingreso: mayo-2004
Mensajes: 1.266
Antigüedad: 19 años, 11 meses
Puntos: 2
Te falta una comilla simple en la query,después de $valor y por cierto, ¿donde pillas el valor de $valor? (vaya trabalenguas)

Yo la select que usaría sería simplemente esta "SELECT id FROM comentarios"
__________________
¿Te apasiona el mundo del guión? El portal del guión
  #10 (permalink)  
Antiguo 10/06/2004, 05:19
 
Fecha de Ingreso: mayo-2004
Mensajes: 571
Antigüedad: 19 años, 11 meses
Puntos: 0
gran observacion has dado en el clavo :D ahora lo que pasa es que me pone como resultado 0!!!!

Código PHP:
<?
$host 
"localhost"
$user "mysql";
$pass "mysql";
$dbname "tablacomen"

$conecta mysql_connect($host,$user,$pass); 
mysql_select_db($dbname,$conecta); 
$result mysql_query("SELECT id FROM comentarios WHERE id='$valor'"); 
$total mysql_num_rows($result); 
        echo 
"$total";
?>
raro.....raro....raro
  #11 (permalink)  
Antiguo 10/06/2004, 08:19
 
Fecha de Ingreso: junio-2004
Mensajes: 101
Antigüedad: 19 años, 10 meses
Puntos: 0
De acuerdo Re:

Hola:

Si ya no te muestra error y el resultado te da como cero puede ser o que no tienes registros en tu tabla o por la condiciòn que das en el select.

Código PHP:
$result mysql_query("SELECT id FROM comentarios WHERE id='$valor'"); 
seguro que tienes algún registros que su id sea = a $valor ???

Suerte
  #12 (permalink)  
Antiguo 10/06/2004, 09:01
 
Fecha de Ingreso: mayo-2004
Mensajes: 571
Antigüedad: 19 años, 11 meses
Puntos: 0
aqui te pongo el codigo de la tabla :D

CREATE TABLE comentarios(
id bigint(7) default NULL,
id_noticia bigint(7) default NULL,
fecha char(250) default NULL,
nick char(250) default NULL,
comentario char(250) default NULL,
KEY id (id) )

mmmmmm como siempre te digo creo que soy muy novato pa esto pero es que.......me gusta complicarme la vida
  #13 (permalink)  
Antiguo 10/06/2004, 09:13
Avatar de Ricardo  
Fecha de Ingreso: febrero-2003
Ubicación: Capital Federal, Argentina
Mensajes: 60
Antigüedad: 21 años, 2 meses
Puntos: 0
Ok, mandaste la tabla, pero tiene registros cargados esta tabla???? Si no tuvieras seria logico que te devolviera 0, como asi tambien si estas poniendo como $valor un id inexistente o que este id no tenga registros en la tabla.
__________________
.:: globaldot ::. | diseñoweb
www.globaldot.com.ar
  #14 (permalink)  
Antiguo 10/06/2004, 09:50
Avatar de living  
Fecha de Ingreso: mayo-2004
Mensajes: 1.266
Antigüedad: 19 años, 11 meses
Puntos: 2
Yo es que ya me pierdo un poco . Se supone que el id es único ¿no?. Entonces siempre te devolverá 1 si existe o 0 si no existe pero nunca va a haber más de un id igual. Aparte si tu id es numérico tienes que quitar las comillas simples, sería así : WHERE id=$valor , viendo la estructura de tu tabla yo creo que debería ser:

$result = mysql_query("SELECT id FROM comentarios WHERE id_noticia=$valor");
__________________
¿Te apasiona el mundo del guión? El portal del guión
  #15 (permalink)  
Antiguo 10/06/2004, 09:54
 
Fecha de Ingreso: mayo-2004
Ubicación: valencia
Mensajes: 10
Antigüedad: 19 años, 11 meses
Puntos: 0
ok, me interesa mucho este problema, yo tambien tengo una duda, y si yo quiero que el id de esa tabla sea autonumerico, osea que cada vez que yo inserte un comentario a la tabla, coloque un numero seguido del anterior ?? como haria ??

ejemplo:

Comentarios:
Id - Comentario - Nombre
1 - Hola a todos - polux
2 - bienvenidos - manuela
3 - ... - ....

asi, entienden? el numero que sale de primero noi lo tengo que colocar yo en el formulario si no que la base de datos lo coloque automaticamente... me ayudarian ???
  #16 (permalink)  
Antiguo 10/06/2004, 10:01
 
Fecha de Ingreso: junio-2004
Mensajes: 101
Antigüedad: 19 años, 10 meses
Puntos: 0
Hola:

Para lo que quieres tienes que definirlo en tu gestor mysql

cuando creas los campos de tu tabla indicas que tu id sea auto_increment

si ya la tienes creada solo tienes que editar el campo para cambiarlo


para contar el resultados , tiene razón living por lo que la consulta deberia ser asi si quieres contar todos los registros sin condición alguna.

$result = mysql_query("SELECT * FROM comentarios);


Saludos.....
  #17 (permalink)  
Antiguo 10/06/2004, 10:20
 
Fecha de Ingreso: mayo-2004
Mensajes: 571
Antigüedad: 19 años, 11 meses
Puntos: 0
si le saco las comillas "simples" me da este error:


Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in

y si se las pongo me da como resultado 0,si actualmente hay 2 comentarios con sus dos ID`s y sus Nicks pero me manda 0

Código PHP:
$conecta mysql_connect($host,$user,$pass); 
mysql_select_db($dbname,$conecta); 
$result mysql_query("SELECT id FROM comentarios WHERE id_noticia=$valor");
$total mysql_num_rows($result); 
        echo 
"$total"
  #18 (permalink)  
Antiguo 10/06/2004, 10:51
Avatar de Ricardo  
Fecha de Ingreso: febrero-2003
Ubicación: Capital Federal, Argentina
Mensajes: 60
Antigüedad: 21 años, 2 meses
Puntos: 0
INSERT INTO $tabla ("id","Comentario","Nombre") VALUES ("",$comentario,$nombre)
__________________
.:: globaldot ::. | diseñoweb
www.globaldot.com.ar
  #19 (permalink)  
Antiguo 11/06/2004, 10:02
 
Fecha de Ingreso: mayo-2004
Ubicación: valencia
Mensajes: 10
Antigüedad: 19 años, 11 meses
Puntos: 0
si pero si el campo de la tabla no lo defino como TEXT, me dice cuando actualizo que esto no es un numero... como se llama el valor para que sea un id, o un numero??? ... y luego al final le coloco auto_increment...
  #20 (permalink)  
Antiguo 11/06/2004, 10:08
Avatar de Ricardo  
Fecha de Ingreso: febrero-2003
Ubicación: Capital Federal, Argentina
Mensajes: 60
Antigüedad: 21 años, 2 meses
Puntos: 0
INT (entero) a eso te referis?
__________________
.:: globaldot ::. | diseñoweb
www.globaldot.com.ar
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 09:30.