zombie 0 Denunciar post Postado Setembro 7, 2010 Galera, tudo joia? Bom tenho um sistema de notícia, e em cada notícia um sistema de comentario, gostaria de saber como eu poderia fazer para que quando tiver um novo comentário, aparecer uma imagem no titulo (Novo comentario por exemplo) ou o titulo ficar com fundo ou outra cor, alguem tem alguma ideia, sugestão? desde ja agradeço a todos.. http://forum.imasters.com.br/public/style_emoticons/default/joia.gif Compartilhar este post Link para o post Compartilhar em outros sites
wolfphw 60 Denunciar post Postado Setembro 8, 2010 Cara geralmente o povo utiliza uma imagem digamos como um simbolo para comentario com a quantidade de comentários que tem nekele texto... ou exibir direto os comentários de baixo do texto... Algo dessa forma Compartilhar este post Link para o post Compartilhar em outros sites
William Bruno 1501 Denunciar post Postado Setembro 8, 2010 hum.. não sei se entendi bem, mas qual a diferença entre 'novo comentário', e 'algum comentário' ? você vai controlar os usuários que 'já leram', e os que 'não leram ainda'? Compartilhar este post Link para o post Compartilhar em outros sites
zombie 0 Denunciar post Postado Setembro 8, 2010 tipo assim, tem um sistema de noticia, dai por exemplo, tenho 10 noticia, e a ultima noticia, foi comentada (um novo comentário), dai no titulo da noticia gostaria de colocar alguma coisa para identificar que aquela noticia tem um novo comentário. só que nao sei como poderia fazer isso. abs Compartilhar este post Link para o post Compartilhar em outros sites
wolfphw 60 Denunciar post Postado Setembro 8, 2010 Mas como você vai identificar na sua logica que seria um novo comentario.. comentário com mais de 1 dia já não seriam novos? dai nesse caso você verifica na data do comentário... Compartilhar este post Link para o post Compartilhar em outros sites
zombie 0 Denunciar post Postado Setembro 8, 2010 entendi, mais no caso se eu quizer mostrar a quantidade de comentarios para cada noticia por ex: Titulo (5) a quantidade entre (aspas) por exemplo, como poderia estar fazendo essa contagem? abs vlwww Compartilhar este post Link para o post Compartilhar em outros sites
William Bruno 1501 Denunciar post Postado Setembro 8, 2010 como estão as tuas tabelas do banco de dados ? você tem várias opções... SELECT COUNT(), ..num_rows(); Compartilhar este post Link para o post Compartilhar em outros sites
zombie 0 Denunciar post Postado Setembro 8, 2010 então na tabela ta assim: id idnoticia comentario nome eu teria que contar no idnoticia, qual seria a maneira correta de contar os ids, e ler ele na pagina ao lado do titulo? Compartilhar este post Link para o post Compartilhar em outros sites
wolfphw 60 Denunciar post Postado Setembro 9, 2010 $sql = mysql_query("SELECT * FROM comentarios WHERE idnoticia='2'"); $total = mysql_num_rows($sql); echo $total; Compartilhar este post Link para o post Compartilhar em outros sites
zombie 0 Denunciar post Postado Setembro 10, 2010 legal, vou dar uma estudada aqui, agora preciso aprender como faço para puxar o numero de comentário para cada noticia, por exemplo na tabela idnoticia, tem os ids das noticias, preciso dar uma busca como farei para puxar esses ids para as noticias deles, vlw pela ajuda...se conseguir eu posto aqui...... http://forum.imasters.com.br/public/style_emoticons/default/joia.gif kra tentei puxar a quantidade de comentário para cada titulo mais ele puxa a quantidade para todos eles.como faço para puxar o de cada um, sendo que os titulos estão na tabela noticiacomentario, fiz assim como você falou e deu certo: mysql_query("SELECT * FROM comentarios WHERE idnoticia='3'"); porem só puxou a quantidade que tem o id 3.... como poderia puxar eles...... vlwwww Compartilhar este post Link para o post Compartilhar em outros sites
William Bruno 1501 Denunciar post Postado Setembro 11, 2010 uma forma melhor.. SELECT id,titulo, ( SELECT COUNT(id) FROM comentario WHERE comentario.id_noticia = noticia.id )AS qnts_comentarios FROM noticia estrutura das tabelas: -- -- Estrutura da tabela `noticia` -- CREATE TABLE IF NOT EXISTS `noticia` ( `id` int(11) NOT NULL AUTO_INCREMENT, `titulo` text NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=4 ; -- -- Extraindo dados da tabela `noticia` -- INSERT INTO `noticia` (`id`, `titulo`) VALUES (1, 'Lorem'), (2, 'Ipsum'), (3, 'Terceira'); e -- -- Estrutura da tabela `comentario` -- CREATE TABLE IF NOT EXISTS `comentario` ( `id` int(11) NOT NULL AUTO_INCREMENT, `id_noticia` int(11) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=9 ; -- -- Extraindo dados da tabela `comentario` -- INSERT INTO `comentario` (`id`, `id_noticia`) VALUES (1, 1), (2, 2), (3, 2), (4, 1), (5, 3), (6, 2), (7, 2), (8, 3); saída: id titulo qnts_comentarios 1 Lorem 2 2 Ipsum 4 3 Terceira 2 Compartilhar este post Link para o post Compartilhar em outros sites
zombie 0 Denunciar post Postado Setembro 12, 2010 Eai tudo joia, vlw pelo help ai, tentei assim: <?php $sql = mysql_query("SELECT id,titulo, (SELECT COUNT(id) FROM noticiacomentario WHERE noticiacomentario.idnoticia = noticia.id )AS qnts_comentarios FROM noticia"); $total = mysql_num_rows($sql); echo $total; ?> extrutura das tablas noticia id titulo noticiacomentario id idnoticia porem não aparece a contagem, o que to errando ai? obrigado desde ja... http://forum.imasters.com.br/public/style_emoticons/default/joia.gif Compartilhar este post Link para o post Compartilhar em outros sites
William Bruno 1501 Denunciar post Postado Setembro 12, 2010 ^_^ não precisa usar o num rows.. tente assim: <?php $sql = "SELECT id,titulo, (SELECT COUNT(id) FROM noticiacomentario WHERE noticiacomentario.idnoticia = noticia.id )AS qnts_comentarios FROM noticia"; $query = mysql_query( $sql )or die( mysql_query() ); while( $dados = mysql_fetch_object( $query ) ) echo $dados->titulo.' ('.$dados->qnts_comentarios.' )', '<br />'; Compartilhar este post Link para o post Compartilhar em outros sites
zombie 0 Denunciar post Postado Setembro 12, 2010 amigo, na pagina eu ja tenho um while, quando eu tento fazer a contagem, ele carrega o titulo mais dai aonde é para aparecer a quantidade fica em branco e o restante dos titulos nao aparecem, como poderia fazer esse select e colocar por ex. <?php echo $noticia['qnts_comentarios']; ?> algo assim para aparecer a contagem. ou to no caminho errado? desde ja agradeço pela atenção kra http://forum.imasters.com.br/public/style_emoticons/default/joia.gif Compartilhar este post Link para o post Compartilhar em outros sites
brunocasado 0 Denunciar post Postado Setembro 12, 2010 amigo, na pagina eu ja tenho um while, quando eu tento fazer a contagem, ele carrega o titulo mais dai aonde é para aparecer a quantidade fica em branco e o restante dos titulos nao aparecem, como poderia fazer esse select e colocar por ex. <?php echo $noticia['qnts_comentarios']; ?> algo assim para aparecer a contagem. ou to no caminho errado? desde ja agradeço pela atenção kra http://forum.imasters.com.br/public/style_emoticons/default/joia.gif Posta teu código cara. É melhor pra gente analisar. deve ter coisa errado ai. talvez um fechamento no lugar errado. Posta sua página das noticias. Compartilhar este post Link para o post Compartilhar em outros sites
zombie 0 Denunciar post Postado Setembro 14, 2010 eai tudo joia? então, to sem o codigo aqui agora, to no trampo ainda, chegando em casa eu posto ele aqui, mais não conegui fazer dessa forma acima, ele fica branco, select count não consegui direito, e o num_rows apareceu a contagem porem só de uma noticia. to dando uma estudada mais até agora nao deu certo ainda, se alguem tiver mais uma ideia agradeço muito, e caso consigo resolver eu posto aqui a solução. (acho que to errando em algum canto, mais nao to conseguindo achar) abs té+ http://forum.imasters.com.br/public/style_emoticons/default/joia.gif Compartilhar este post Link para o post Compartilhar em outros sites
William Bruno 1501 Denunciar post Postado Setembro 14, 2010 por questões de clareza, execute exatamente assim: <?php $con = mysql_connect( 'localhost', 'root', '123' ); mysql_select_db( 'test', $con ); $sql = "SELECT `id`,`titulo`, (SELECT COUNT(`id`) FROM `comentario` WHERE `comentario`.`id_noticia` = `noticia`.`id` )AS `qnts_comentarios` FROM `noticia`"; $query = mysql_query( $sql )or die( mysql_error() ); while( $dados = mysql_fetch_object( $query ) ) echo $dados->titulo.' ('.$dados->qnts_comentarios.' )', '<br />'; com as estruturas de tabelas que propus: -- -- Estrutura da tabela `comentario` -- CREATE TABLE IF NOT EXISTS `comentario` ( `id` int(11) NOT NULL AUTO_INCREMENT, `id_noticia` int(11) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=9 ; -- -- Extraindo dados da tabela `comentario` -- INSERT INTO `comentario` (`id`, `id_noticia`) VALUES (1, 1), (2, 2), (3, 2), (4, 1), (5, 3), (6, 2), (7, 2), (8, 3);e-- -- Estrutura da tabela `noticia` -- CREATE TABLE IF NOT EXISTS `noticia` ( `id` int(11) NOT NULL AUTO_INCREMENT, `titulo` text NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=4 ; -- -- Extraindo dados da tabela `noticia` -- INSERT INTO `noticia` (`id`, `titulo`) VALUES (1, 'Lorem'), (2, 'Ipsum'), (3, 'Terceira'); saída: Lorem (2 ) Ipsum (4 ) Terceira (2 ) Compartilhar este post Link para o post Compartilhar em outros sites
zombie 0 Denunciar post Postado Setembro 24, 2010 Opa beleza? então deu certo aqui, tinha um erro no que estava fazendo, um dúvida. echo $dados->titulo.' ('.$dados->qnts_comentarios.' )', '<br />'; esse trecho do codigo, posta a quantidade de comentário, e o titulo, como faria para colocar assim: data - titulo (quantidade de comentario) leia mais... e o link para acessar a noticia, como ficaria esse trecho? muito obrigado http://forum.imasters.com.br/public/style_emoticons/default/joia.gif http://forum.imasters.com.br/public/style_emoticons/default/joia.gif Galera, to tentando aqui e nada, alguem pode me dar uma "Luz" como poderia fazer para ficar assim: 23/09/2010 - Titulo da Noticia (3 comentários) - leia mais (com um link para ler a noticia) $query = mysql_query( $sql )or die( mysql_error() ); while( $dados = mysql_fetch_object( $query ) ) echo date('d/m/Y', strtotime($row_noticia['data'])), $dados->titulo.' ('.$dados->qnts_comentarios.' )', '<br />'; ?> </p></td> tentei assim mais nao deu, a data aparece mais nao a correta. agradeceria muito pelo help. abs <tr> <td class="style3"><strong><a href="lermsg.php?id=<?php echo $row_noticia['id']; ?>"> <span class="style4"><?php echo date('d/m/Y', strtotime($row_noticia['data'])); ?></span> - <?php echo $row_noticia['titulo']; ?> - <span class="style3"><em>leia mais...(Aqui vai o numero de comentario)</em></span></a></td> usando assim $sql = mysql_query("SELECT * FROM comentarios WHERE idnoticia='1'"); $total = mysql_num_rows($sql); echo $total; da certo forem ele puxa a quantidade para todos. da outra forma nao consegui fazer. assim o sistema funciona bem, porem nao consigo fazer para que aparece o numero de comentarios na frente, alguem pode me dar um help ai??? obrigado desde ja Compartilhar este post Link para o post Compartilhar em outros sites
William Bruno 1501 Denunciar post Postado Setembro 24, 2010 cara, a solução está em: http://forum.imasters.com.br/index.php?/topic/408074-aviso-de-novo-comentario/page__view__findpost__p__1606007 só fazer da forma que eu disse. Não precisa complicar, ou voltar do inicio. Compartilhar este post Link para o post Compartilhar em outros sites
zombie 0 Denunciar post Postado Setembro 24, 2010 eai tudo joia? então da forma que você falou deu "certo", porem nao consigo deixar assim: 24/09/2010 - Titulo da Noticia (numero de comentarios caso tenha)...leia mais deixar da forma acima e com link para cada noticia, to tentando, juro que estou, mais nao to conseguindo nao. se puder dar um help, agradeço e muito... abs e obrigado desde ja Compartilhar este post Link para o post Compartilhar em outros sites