pedro555 Postado Novembro 18, 2007 Denunciar Share Postado Novembro 18, 2007 Bom dia,Eu quero que os usuários do meu site comentem as matérias.Então criei uma tabela comentarios no mysql, a tabela noticias já existe.Ai eu crio um pequeno formulário, onde o usuário digita o nome, estado, email e o comentário.Enviando para a tabela comentarios, mas como vou associar o comentário com a noticia que foi comentada??Valeu Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 fabiosanches Postado Novembro 18, 2007 Denunciar Share Postado Novembro 18, 2007 coloca no linda da noticia uma passagem de parametro com o id dela.. e na tabela de comentarios você coloca um campo 'idnoticia' q vai ser o vinculo entre elas.. ai na hora q você der um select nos comentarios baseados nakela noticia você vai dar o select na tabela comentarios 'where idnoticia=$id ( $id veio por passagem de parametro atravez de um outro link como por exemplo 'exibir comentarios' Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 pedro555 Postado Novembro 18, 2007 Autor Denunciar Share Postado Novembro 18, 2007 bom.. entendi mais ou menos, mas como vou fazer essa passagem de parâmetro??eu tenho que criar um 'idnoticia' na tabela comentários???valeu Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 ESerra Postado Novembro 18, 2007 Denunciar Share Postado Novembro 18, 2007 Óbvio... você precisa que a chave primária da tabela que guarda as notícias seja guarda na tabela que vai conter os comentários... assim você vai conseguir através de uma notícia pegar os comentários referentes a ela na outra tabela...Como você faz pra descobrir que notícia abrir? Em algum ponto tem o ID da notícia, então pode aproveitar o mesmo parâmetro pra pegar os comentários na outra tabela... Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 pedro555 Postado Novembro 18, 2007 Autor Denunciar Share Postado Novembro 18, 2007 certo... estou começando a entender melhor..rsrsrsentão vai ser assim:tabela comentário - nome, estado, email, comentário e id_noticiaso id da noticia precisa estar com o mesmo nome nas duas tabelas? pois na tabela noticias esta simplesmente 'id'.E como vou 'linkar' o 'id_noticias' da tabela comentarios com o 'id' da tabela noticias??Valeu Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 ESerra Postado Novembro 19, 2007 Denunciar Share Postado Novembro 19, 2007 O nome dos campos na tabela não interfere, em um pode estar "euaindaosounoob" e na outra "issoehfaltadebomsenso", se você souber que o "euaindaosounoob" se liga ao "issoehfaltadebomsenso" é a conta...Agora quanto a sua pergunta "E como vou 'linkar' o 'id_noticias' da tabela comentarios com o 'id' da tabela noticias??", eu te faço outra, você tem uma página que exibe as notícias, correto? Então como você faz pra saber que notícia é pra exibir? Essa é a resposta pra sua pergunta, pois o que você usa pra selecionar a notícia à exibir, vai ser o mesmo dado que você vai utilizar para pegar os comentários... Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 pedro555 Postado Novembro 20, 2007 Autor Denunciar Share Postado Novembro 20, 2007 Então a tabela comentarios vai ter um id_noticias.Este id_noticias é setado como auto incrementar certo?A cada comentário esse id_noticias vai subindo 1 a 1, assim como o id_comentarios.Quando exibir os comentários, vai exibir todos que tiverem armazenados se eu for exibir como referencia o id_noticias.Ai todos os comentários de todas as noticias irá mostrar em cada página da noticia.Alguma coisa esta errada, hehehe.E agora ESerra? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 ESerra Postado Novembro 20, 2007 Denunciar Share Postado Novembro 20, 2007 O que eu sempre aconselho as pessoas que estão desenvolvendo algo é pensar de forma lógica, a pessoa até pode não saber lógica de programação, mas a lógica do dia-a-dia, pelo menos, ela deve ter...Claro que o id_noticias que fica na tabela comentarios não vai ser auto increment, a função desse campo é apenas marcar a que notícia pertence o comentário...Assim, por exemplo, se a sua tabela comentarios tiver os seguintes campos (id é a chave primário):id-id_noticias-comentarioAi ser preenchido via ficar assim (exemplo hipotético):1-10-dfdfgfdgf2-10-dgfgvbcbcvbcvbv3-4-cvbvdfhgfhdgh4-2-fgdfgdfgfdg5-15-dfdgfdfgfg6-10-fgdfgfgfAi no caso está sendo guardado um comentário para a notícia 2, 4 e 15, e 3 comentários para a notícia 10... é assim que essa tabela vai funcionar... Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 pedro555 Postado Novembro 21, 2007 Autor Denunciar Share Postado Novembro 21, 2007 opaa, demorei mas agora entendi como deve funcionar.Veja se estou pensando certo.Na tabela comentarios, tem um item id_noticias sem ser auto increment.E no formulário, irei fazer uma busca para saber qual id da tabela noticia é, após achar o id, eu pego esse id e insiro em id_noticias da tabela comentários.E para mostrar os comentários da noticia, basta fazer uma busca no id_noticias da tabela comentarios e pegar o id_noticiase fazer uma consulta na tabela noticias.Esta certo?? acordei agora e pensei nisso, heehehe.Valeu Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 ESerra Postado Novembro 21, 2007 Denunciar Share Postado Novembro 21, 2007 É por ai... Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Diego.G.A Postado Novembro 21, 2007 Denunciar Share Postado Novembro 21, 2007 (editado) tipo tu faz assim<?php // AQUI TU FAZ UMA BUSCA NA NOTICIA QUE VAI APARECER $sql = "SELECT * FROM tbl_noticia WHERE ID='".$id."'"; $query = mysql_query($sql); // AQUI ELE RETORNA SE ENCONTRO ALGUMA NOTICIA if(!(mysql_num_rows($query))) { // SE ELE NÃO ECONTRAR NENHUMA NOTICIA ELE IMPRIME UMA MSG echo "Nunhuma noticia encontrada!"; } else { // SE ELE ENCONTRA ALGUMA NOTICIA IMPRIME ELA while($not = mysql_fetch_object($query)) { echo $not->Noticia; // AQUI ELE VAI BUSCAR OS COMENTARIOS $sqlC = "SEELCT * FROM tbl_comentarios WHERE IdNoticia='".$id."'"; $queryC = mysql_query($sqlC); // VERIFICA SE ENCONTRO ALGUM COMENTARIO if(!(mysql_num_rows($queryC))) { // SE NÃO TIVER COMENTARIOS IMPRIME UMA MSG echo "Nunhum comentario!"; } else { // CASO TENHA COMENTARIO MOSTRA ELES while(mostC = mysql_fetch_object($queryC)) { echo $mostC->Comentario; } } } } ?> Mas para fazer isso tu tem que ter um campo dentro da tabela comentariosque informa o id da noticia para qual foi o comentario.É isso ai espero que tenha entendido Editado Novembro 21, 2007 por Diego.G.A Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 pedro555 Postado Novembro 21, 2007 Autor Denunciar Share Postado Novembro 21, 2007 Entendi o que você fez ai.Eu já tenho uma página gerada onde mostra a noticia.E também já coloquei um campo na tabela comentario relacionado a tabela noticia (id_noticias)Agora na hora de inserir um comentário, o que falta é ligar os 2.Eu não preciso pegar o id da noticia que esta na página e depois inserir no campo id_noticias?Ai para mostrar os comentários, eu pego o id da noticia e faço uma busca na tabela comentarios pelo id_noticias??E agora?rsrsrs to acertando?? valeu pela ajuda ae! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Diego.G.A Postado Novembro 21, 2007 Denunciar Share Postado Novembro 21, 2007 pra ti ligar o id da noticia com o comentario é o seguinte tu tem que inserir o id da noticia no campo na tabela do comentario saco ai é os fazer a busca q aparece. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 pedro555 Postado Novembro 21, 2007 Autor Denunciar Share Postado Novembro 21, 2007 Eu já inserir o id da noticia no campo na tabela comentário. o que falta são as buscas para ligar uma com a outra.Vou tentar e se não conseguir eu posto aqui meu código ok??Valeu Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Diego.G.A Postado Novembro 21, 2007 Denunciar Share Postado Novembro 21, 2007 Ai, o script que eu postei tem uma busca relacionada estilo isso que tu quer fazer.faz assimwhile (busca 1) { while(busca 2) { ... } } Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 pedro555 Postado Novembro 21, 2007 Autor Denunciar Share Postado Novembro 21, 2007 Ok Diego, valeuVou tentar isso e amanhã já retorno com uma resposta. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 pedro555 Postado Novembro 24, 2007 Autor Denunciar Share Postado Novembro 24, 2007 Bom dia Diego,Estou ainda tentando resolver esse problema.veja o que eu fiz:<? include ("config.php"); $id = $_GET["id"]; if($_GET["postar"] == "ok"){ $inserir = mysql_query("INSERT INTO comentarios (nome, email, comentario, id_noticias) VALUES ('$nome','$email','$comentario','$id_noticias')"); echo "Esta notícia foi comentada com sucesso"; } ?> <div id="formulario"> <div id="aba">Comentar esta notícia</div> <form name="form" method="post" action="comentar.php"> <input type="hidden" name="id_noticias" /> <div id="form_nome">Seu nome: <input class="typetext" type="text" name="nome" id="nome" size="40"> </div> <div id="form_nome">Seu e-mail: <input class="typetext" type="text" name="email" id="email" size="40"> </div> <div id="form_nome">Comentário:<br /> <label> <textarea name="comentario" id="textarea" cols="45" rows="5"></textarea> </label> </div> <div id="form_nome" align="center"><input type="submit" name="Submit" value="Indicar"></div></form> </div>Isso é dentro da página aonde eu faço um selec para mostrar a noticia.Como eu vou inserir o id da noticia no campo (hidden) id_noticias??? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 pedro555 Postado Novembro 26, 2007 Autor Denunciar Share Postado Novembro 26, 2007 O que falta???Preciso colocar um parâmetro??$id_noticias = $id; ?????Me ajudem, please!!! Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
pedro555
Bom dia,
Eu quero que os usuários do meu site comentem as matérias.
Então criei uma tabela comentarios no mysql, a tabela noticias já existe.
Ai eu crio um pequeno formulário, onde o usuário digita o nome, estado, email e o comentário.
Enviando para a tabela comentarios, mas como vou associar o comentário com a noticia que foi comentada??
Valeu
Link para o comentário
Compartilhar em outros sites
17 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.