Foros del Web » Programando para Internet » PHP »

Contar comentarios.

Estas en el tema de Contar comentarios. en el foro de PHP en Foros del Web. en la web encontre un sistema de comentario, y lo adapte a mis necesidades. @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código PHP: Ver original id  id_2    nick   ...
  #1 (permalink)  
Antiguo 27/06/2010, 23:10
Avatar de bocho0610  
Fecha de Ingreso: enero-2010
Ubicación: <? echo "Santiago, Chile"; ?>
Mensajes: 341
Antigüedad: 14 años, 3 meses
Puntos: 26
[SOLUCIONADO]Contar comentarios.

en la web encontre un sistema de comentario, y lo adapte a mis necesidades.

Código PHP:
Ver original
  1. id  id_2    nick    comentario
  2. 1   26  asd asd
  3. 2   25  Gaboo   Pero como?? oie sabes que yo tenia que...
  4. 3   25  anonimo asdasd
  5. 4   25  Hugo    porque?
  6. 5   25  Hugo    asdasdasdasd

los comentarios me los guarda asi donde "id_2" pertenece al id de la noticia en cuestion (la que esta en el index). pasa que queria mostrar ese tipico "Comentarios (7)" y cosas asi y pense hacerlo con un contador algo como.

Código PHP:
Ver original
  1. $cont=0;
  2. $sql=mysql_query("select * from noticia order by id_noticia desc limit 3",$link);
  3. $sql2=mysql_query("select id_2 from comentarios",$link);
  4. $rows=mysql_fetch_assoc($sql2);
  5.  
  6. ....
  7.  
  8. Comments (<?if($row['id_noticia']==$rows['id_2']){$cont=($cont + 1); echo $cont;}?>)</a>

pero no funciono jajajaja. alguien sabe mas menos como hacerlo?
__________________
Sigueme en Twitter!
Septimoarte.cl <-- Un mundo en cine.

Última edición por bocho0610; 02/07/2010 a las 18:47
  #2 (permalink)  
Antiguo 28/06/2010, 01:13
 
Fecha de Ingreso: junio-2002
Mensajes: 750
Antigüedad: 21 años, 10 meses
Puntos: 22
Respuesta: Contar comentarios.

Puedes usar la función mysql_num_rows()
O mediante una consulta SQL con SELECT COUNT(*) FROM comentarios para obtener el número de comentarios que hay en la tabla, es decir el número de comentarios global, no de una única noticia.

Última edición por all-ill; 29/06/2010 a las 07:05
  #3 (permalink)  
Antiguo 28/06/2010, 17:47
Avatar de bocho0610  
Fecha de Ingreso: enero-2010
Ubicación: <? echo "Santiago, Chile"; ?>
Mensajes: 341
Antigüedad: 14 años, 3 meses
Puntos: 26
Respuesta: Contar comentarios.

es que se supone que cada noticia tiene un numero diferentes de comentarios. por eso queria hacerlo para cada noticia. bueno vere haber como nos va.

gracias.
__________________
Sigueme en Twitter!
Septimoarte.cl <-- Un mundo en cine.
  #4 (permalink)  
Antiguo 29/06/2010, 06:51
Avatar de martin0341  
Fecha de Ingreso: septiembre-2006
Ubicación: Rosario - Santa Fe
Mensajes: 296
Antigüedad: 17 años, 7 meses
Puntos: 8
Respuesta: Contar comentarios.

Supongamos que la tablas se llaman noticias y comentarios.
Entonces:
Código PHP:
Ver original
  1. SELECT COUNT( comentarios.id ) , noticias.id
  2. FROM noticias, comentarios
  3. WHERE comentarios.id_2 = noticias.id
  4. GROUP BY comentarios.id_2

Saludos
  #5 (permalink)  
Antiguo 29/06/2010, 18:22
Avatar de bocho0610  
Fecha de Ingreso: enero-2010
Ubicación: <? echo "Santiago, Chile"; ?>
Mensajes: 341
Antigüedad: 14 años, 3 meses
Puntos: 26
Respuesta: Contar comentarios.

gracias por la respuesta. cuento que no me resulto, quizas lo hice mal o bien no supe llamarlo, para que fuese mostrado.
__________________
Sigueme en Twitter!
Septimoarte.cl <-- Un mundo en cine.

Última edición por bocho0610; 29/06/2010 a las 19:23
  #6 (permalink)  
Antiguo 29/06/2010, 19:25
 
Fecha de Ingreso: abril-2010
Mensajes: 159
Antigüedad: 14 años
Puntos: 11
Respuesta: Contar comentarios.

Un contador de comentarios? o un contador de visitas de cada comentario?
  #7 (permalink)  
Antiguo 29/06/2010, 19:42
Avatar de bocho0610  
Fecha de Ingreso: enero-2010
Ubicación: <? echo "Santiago, Chile"; ?>
Mensajes: 341
Antigüedad: 14 años, 3 meses
Puntos: 26
Respuesta: Contar comentarios.

jajaja como dicen, una imagen vale mas que mil palabras.

lo que necesito es como que cuando se escriba un comentario sobre una noticia, el link que envia a la noticia para ser comentada lleva el numero de comentarios impreso.



link directo: http://img196.imageshack.us/img196/4615/testrk.jpg
__________________
Sigueme en Twitter!
Septimoarte.cl <-- Un mundo en cine.
  #8 (permalink)  
Antiguo 29/06/2010, 20:27
 
Fecha de Ingreso: abril-2010
Mensajes: 159
Antigüedad: 14 años
Puntos: 11
Respuesta: Contar comentarios.

Bueno tendrias que crear un campo mas en la DB
de nombre Cuenta o como tu quieras :D

Código PHP:
mysql_query('UPDATE noticia SET Cuenta = Cuenta + 1 
WHERE id = "'
.addslashes($_GET["id"]).'"'); 
$_GET["id"] es para campturar el id que pasa por la url
  #9 (permalink)  
Antiguo 29/06/2010, 20:41
Avatar de bocho0610  
Fecha de Ingreso: enero-2010
Ubicación: <? echo "Santiago, Chile"; ?>
Mensajes: 341
Antigüedad: 14 años, 3 meses
Puntos: 26
Respuesta: Contar comentarios.

pero seria en la tabla noticias?

porque tengo la tabla noticias y aparte la tabla comentarios.

EDITO:

mejor la pagina en cuestion: http://prueba.benharren.com/

deben bajar porque la primera noticia es muy larga. veran "comments() - fecha" si apretan comments tendran el formulario donde pueden comentar la noticia. y lo que quiero esque cuando haya un comentario comments que esta en el index vaya aumentando acorde a los comentarios entrantes. para ello tengo noticia que es la tabla que muestra al index y noticias.php. y comentarios que tiene todos los comentarios del sistema.
__________________
Sigueme en Twitter!
Septimoarte.cl <-- Un mundo en cine.

Última edición por bocho0610; 29/06/2010 a las 21:18
  #10 (permalink)  
Antiguo 30/06/2010, 05:29
Avatar de martin0341  
Fecha de Ingreso: septiembre-2006
Ubicación: Rosario - Santa Fe
Mensajes: 296
Antigüedad: 17 años, 7 meses
Puntos: 8
Respuesta: Contar comentarios.

Si tenes el id de la noticia podes hacer antes de "Comments"

Código PHP:
Ver original
  1. $sql="select count(*) from comentarios where id_2=".$id_noticia

Eso te va a dar la cantidad de comentarios que tiene la noticia.

Saludos
  #11 (permalink)  
Antiguo 30/06/2010, 22:00
Avatar de bocho0610  
Fecha de Ingreso: enero-2010
Ubicación: <? echo "Santiago, Chile"; ?>
Mensajes: 341
Antigüedad: 14 años, 3 meses
Puntos: 26
Respuesta: Contar comentarios.

diculpen lo bruto que soy u.u

al final quedo asi, deje la consulta adentro del while, y mostrara

Código PHP:
Ver original
  1. <div id="main">
  2.             <?while($row=mysql_fetch_assoc($sql)){
  3.             $noticia=$row['id_noticia'];?>
  4.             <a name="TemplateInfo"></a>
  5.             <h1><?echo $row['titulo'];?></h1>
  6.             <p class="post-by">Posted by <b><?echo $row['usuario'];?></b></p>
  7.             <p><?echo bbcode($row['cuerpo']);?></p>
  8.                 <?$sql5=mysql_query("select count(*) from comentarios where id_noticia=$noticia",$link);?>
  9.             <p class="post-footer">
  10.             <a href="noticias.php?id=<?echo $noticia;?>" class="comments">Comments ()</a> |            
  11.             <span class="date"><?echo $row['dia'];?> Hrs</span>
  12.             </p>           
  13.             <?}?>
  14.         </div>

el footer es el pie de la pagina, donde salen los nº de comentarios y la fecha. si hago un simple Comments (<?echo $sql5?>) sale Resource id #11. jjajajaja disculpen todos, de verdad no se como me cuesta tanto eso.

por la consulta tendria que hacer otro while?
__________________
Sigueme en Twitter!
Septimoarte.cl <-- Un mundo en cine.
  #12 (permalink)  
Antiguo 02/07/2010, 18:48
Avatar de bocho0610  
Fecha de Ingreso: enero-2010
Ubicación: <? echo "Santiago, Chile"; ?>
Mensajes: 341
Antigüedad: 14 años, 3 meses
Puntos: 26
Respuesta: Contar comentarios.

hola ya lo solicione. era:

<?$sql5=mysql_query("select count(id_noticia) as suma from comentarios where id_noticia=$noticia",$link);
$row=mysql_fetch_assoc($sql5);?>

y para mostrar los resultados es <?$row['suma'];?> obtendremos el total de comentarios de cada noticia.
__________________
Sigueme en Twitter!
Septimoarte.cl <-- Un mundo en cine.

Etiquetas: comentarios, contar
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 22:54.