webdesign 1 Denunciar post Postado Abril 15, 2012 tenho no meu site ultimas noticias e queria colocar em cada noticia o numero de pessoas que comentaram aquela noticia como faço issu?!?!? <?php $posts = mysql_query("SELECT post_id, post_status, data, autor, email, site, comentario FROM c_comments ORDER BY data DESC LIMIT 3") or die(mysql_error()); if(@mysql_num_rows($posts) <= '0'){ echo "nao existe"; }else{ while($res_posts=mysql_fetch_array($posts)){ $post_id = $res_posts[0]; $post_status = $res_posts[1]; $data = $res_posts[2]; $autor = $res_posts[3]; $email = $res_posts[4]; $site = $res_posts[5]; $comentario = $res_posts[6]; ?> <?php $coments= mysql_query("SELECT titulo FROM up_posts WHERE id = '$post_id'") or die(mysql_error()); if(@mysql_num_rows($coments) == '0'){ echo ""; }else{ while($res_coments=mysql_fetch_array($coments)){ $titulo_do_post = $res_coments[0]; ?> Compartilhar este post Link para o post Compartilhar em outros sites
JoaoGusmao 2 Denunciar post Postado Abril 15, 2012 use o mysql_num_rows. Compartilhar este post Link para o post Compartilhar em outros sites
webdesign 1 Denunciar post Postado Abril 15, 2012 use o mysql_num_rows. Faço um echo no mysql_num_rows? Compartilhar este post Link para o post Compartilhar em outros sites
JoaoGusmao 2 Denunciar post Postado Abril 15, 2012 Vamos supor que a consulta em que você puxa os comentários está na variável comments: $numero_comments = mysql_num_rows($comment); echo $numero_comments; Prontim. Compartilhar este post Link para o post Compartilhar em outros sites
webdesign 1 Denunciar post Postado Abril 15, 2012 nao está facil . .a consulta onde puxo os comentarios,fiz um echo na $comentario que está na tabela c_comments e assim fiz um echo no comentario... só que queria colocar o titulo entao crie $pega_coments que vai buscar o titulo a tabela up_posts <?php $posts = mysql_query("SELECT post_id, post_status, data, autor, email, site, comentario FROM c_comments ORDER BY data DESC LIMIT 3") or die(mysql_error()); if(@mysql_num_rows($posts) <= '0'){ echo "nao existe"; }else{ while($res_posts=mysql_fetch_array($posts)){ $post_id = $res_posts[0]; $post_status = $res_posts[1]; $data = $res_posts[2]; $autor = $res_posts[3]; $email = $res_posts[4]; $site = $res_posts[5]; $comentario = $res_posts[6]; $pega_coments= mysql_query("SELECT titulo FROM up_posts WHERE id = '$post_id'") or die(mysql_error()); if(@mysql_num_rows($pega_coments) == '0'){ echo ""; }else{ while($res_pega_coments=mysql_fetch_array($pega_coments)){ $titulo_do_post = $res_pega_coments[0]; ?> o codigo inteiro é assim mas agora para defenir que aquele determinado post tem 2 comentarios nao sei fazer issu Compartilhar este post Link para o post Compartilhar em outros sites
ebdt 0 Denunciar post Postado Abril 15, 2012 melhor seria se você usasse relacionamento entre as tabelas, ficaria mais fácil, e economizaria sql... estuda sql, garanto que você não vai se arrepender, experiência própria. Compartilhar este post Link para o post Compartilhar em outros sites
JoaoGusmao 2 Denunciar post Postado Abril 15, 2012 você define qual post vai pegar através do WHERE Compartilhar este post Link para o post Compartilhar em outros sites
Hudson Pereira 4 Denunciar post Postado Abril 15, 2012 A função mysql_num_rows retorna a quantidade de registros de uma determinada query, logo basta você selecionar os comentários com o where de cada post e contar os registros. Compartilhar este post Link para o post Compartilhar em outros sites
webdesign 1 Denunciar post Postado Abril 15, 2012 [/code] eu já consegui fazer a contagem mas agora tenho o problema que ele soma o total eu quero que na noticia x tenha 2 comentarios e que na outra que tenha 0 como faço issu <?php $result = mysql_query("SELECT * FROM c_comments "); $num_rows = mysql_num_rows($result); echo "$num_rows Rows\n"; ?> Compartilhar este post Link para o post Compartilhar em outros sites
JoaoGusmao 2 Denunciar post Postado Abril 15, 2012 É o que disse. De uma forma ou outra, dá um jeito de pegar o ID do post, e com o ID do post, usa no WHERE. (WHERE id_post = '$id_post' Compartilhar este post Link para o post Compartilhar em outros sites
webdesign 1 Denunciar post Postado Abril 15, 2012 É o que disse. De uma forma ou outra, dá um jeito de pegar o ID do post, e com o ID do post, usa no WHERE. (WHERE id_post = '$id_post' <?php $result = mysql_query("SELECT * FROM c_comments WHERE id = '$post_id'"); $num_rows = mysql_num_rows($result); ?> eu fiz assim nao resulta aparece o resultado 0 na tabela c_comments tenho id post_id post_status data autor email site comentario nao sei como fazer para aparecer a contagem certa em cada noticia pode exemplificar Compartilhar este post Link para o post Compartilhar em outros sites
JoaoGusmao 2 Denunciar post Postado Abril 15, 2012 Você tem que ter uma tabela que guarda os comentarios. Na tabela dos comentários, tem que ter uma coluna que vai ser responsável por guardar o id do post. Na notícia, você faz uma consulta, para pegar a notícia... o conteúdo dela e etc... pega tbm o ID que vier na consulta das notícias. Faz uma nova consulta à tabela dos comentários, e coloca um WHERE id_post = '$id_da_noticia'. ou... Depois, na hora de listar os comentários, coloca um mysql_num_rows na consulta dos comentários. Assim, ao mesmo tempo você terá o numero de comentários Compartilhar este post Link para o post Compartilhar em outros sites
webdesign 1 Denunciar post Postado Abril 15, 2012 Você tem que ter uma tabela que guarda os comentarios. Na tabela dos comentários, tem que ter uma coluna que vai ser responsável por guardar o id do post. Na notícia, você faz uma consulta, para pegar a notícia... o conteúdo dela e etc... pega tbm o ID que vier na consulta das notícias. Faz uma nova consulta à tabela dos comentários, e coloca um WHERE id_post = '$id_da_noticia'. ou... Depois, na hora de listar os comentários, coloca um mysql_num_rows na consulta dos comentários. Assim, ao mesmo tempo você terá o numero de comentários já está foi muito facil lol obrigado Compartilhar este post Link para o post Compartilhar em outros sites
JoaoGusmao 2 Denunciar post Postado Abril 15, 2012 Problema resolvido? Compartilhar este post Link para o post Compartilhar em outros sites
webdesign 1 Denunciar post Postado Abril 15, 2012 Problema resolvido? sim <?php $top = mysql_query("SELECT id, titulo FROM up_posts ORDER BY visitas DESC LIMIT 10") or die(mysql_error()); if(@mysql_num_rows($top ) <= '0'){ echo "nao existe posts no top 10 "; }else{ $numero = '0'; while($res_top =mysql_fetch_array($top)){ $id_top = $res_top [0]; $titulo_top = $res_top [1]; $numero++; $contagem_comentarios = mysql_query("SELECT * FROM c_comments WHERE post_id = '$id_top'"); $num_rows = mysql_num_rows($contagem_comentarios); ?> Compartilhar este post Link para o post Compartilhar em outros sites