Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Guilherme Oderdenge

Sistema de comentários & rate

Recommended Posts

Salve!

Então pessoal, o sistema de buscas do fórum não me retorna nem um resultado viável, então, recorri a um post mesmo.

 

Bom, é o seguinte, o meu site tem um sistema de post que está funcionando perfeitamente e, agora, eu quero implementar um sistema de comentários onde cada artigo tenha sua página de comentários, não que seja o mesmo para todos artigos. Bom, acredito que vocês me entenderam e que também utilize parceria com um banco de dados. Beleza, não tem problema, só queria que vocês me indicassem um sistema funcional, simples e prático.

 

Procurei na internet também mas sem êxito. Os resultados ou não funcionam, ou há algum link indisponível ou, em último dos casos, o sistema averigua para todos os artigos (que é o que eu não quero).

 

----------------------------------------------------

 

A minha segunda solicitação é um sistema de "rate" de artigo. Por exemplo, acessem este endereço. Vocês podem ver que no artigo tem um sistema que opina sobre o tópico, com duas questões simples: "Curtiu? Sim [(Y)] ou [(N)]". Procurei na internet e não tive êxito também.

 

Achei dois sistemas e em ambos, não aparecia a imagem (que no caso eram estrelas) que indicava o sistema de rate. E, por tal, não achei algo tão "paparicado", e claro que não é exijir, é que sou bastante leigo. (Acredito que muitos já me viram por aqui, hã? Haha)

 

----------------------------------------------------

 

APROVEITANDO O TÓPICO

 

Como disse antes, tenho meu sistema de notícias funcionando feito uma maravilha, no entanto, disponho de algumas categorias no meu site. A mesma pode ser selecionada ao criar o tópico. Diante desta situação eu gostaria de fazer com que, ao selecionar uma categoria tal, o tópico apareça na página da categoria.

 

Um exemplo mais prático: no momento, o sistema de notícias está funcionando de forma simples. Eu acesso o painel administrativo, escrevo a minha notícia lá, submeto o artigo e voalá! Aparece na página principal do site. Só que no meu site há vários menus, são eles: moda, esportes, jogos e diversos. O que eu queria que acontecesse é que, ao selecionar uma dessas categorias, além de aparecer na página principal, eu gostaria que aparecesse na respectiva página destinada a categoria.

 

Resumindo: Eu quero que, ao fazer o meu artigo (digamos) na categoria Moda, então, automaticamente ele irá aparecer na página principal e na página Moda.

 

Só para constar: Na página principal após postar uma notícia, só há as "headlines", que no caso são apenas publicações da notícia e, para acessar a notícia completa, é necessário clicar no respectivo título.

 

Ah, e com tudo isso, após uma página almejar um máximo de 5 postagens, ocorresse a paginação, que no caso, é transportar artigos mais velhos para páginas seguintes, ou seja, ao fazer 6 posts, o mais velho deles irá para a página 2, enquanto os 5 mais novos se mantém na primeira página.

 

Mas então é isso, quem puder me ajudar, sempre terá meus agradecimentos!

 

Abraços! ;)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não faço conhecimento de sistemas com estas características específicas, o que tem na web é algo mais genérico.

Você pode procurar na seção de Scripts.

 

No mais, se precisar que alguém o desenvolva (remuneradamente), eu me disponho.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Nossa, se não for tão trabalhoso para você, por favor e ainda mantenho os créditos, haha!

 

Mas assim, eu já achei sistemas "prontos" na internet sim, só que são muito ruins e nunca consegui fazê-los funcionarem, por mais que eu leia e releia toda a documentação indicada.

 

Obrigado desde já,

abraços! ;)

Compartilhar este post


Link para o post
Compartilhar em outros sites

O sistema de blog do wordpress faz isso.

 

Cada artigo tem eu seu rodapé sua próprias sessão de comentarios. Procura um blog feito com wordpress na rede pra ver como é.

E sei que instalando um outro programa gratiz no seu blog da pra colocar um sistema de votação. (não lembro o nome)

 

Eu tenho um blog nesse esquema, não pago nada e funciona perfeitamente. (não vo colocar link pq seria propaganda :P )

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá, Bruno Caxito!

 

Muito obrigado pela dica, no entanto, Wordpress não me vem a necessidade. Já tenho o sistema parcialmente pronto e refazer todo o template no Wordpress não me convém muito não.

 

Ah, e para evitar comentários do tipo: "Por que não pesquisasse por Wordpress antes de fazer um sistema desse? Não perderias tanto tempo" - bom, eu gosto de Wordpress e tudo mais, porém, não tenho paciência para fazer um template em cima do mesmo e também estava afim de aprender PHP e dispensei essas e outras.

 

Desde já, obrigado.

Abraços! ;)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Kaminari,

você escreveu código do seu site, ou utilizou algum CMS (joomla, drupal, etc)?

 

Se utilizou um CMS terá que utilizar algum módulo disponível, e certamente existem módulos para suas duas necessidades, mas se você programou seu site, terá que programar tb esses módulos extras.

 

Um sistema de votação é bem simples de fazer:

 

  • Na tabela SQL das noticias você cria um campo "likes" e um campo "dislikes" para guardar os votos positivos e negativos de cada noticia.
  • Na página que exibe a noticia, crie um botão (aí você estiliza como quiser) para atualizar o valor do campo na tabela a cada clique.

Para evitar repetidas votações pelo mesmo usuário, você põe travas por Cookie e Session, no caso de não ser necessário logar para votar.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá, tarilonte!

 

A questão é que sou leigo e não entendi meados do que você falou.

E não, não estou utilizando nenhum CMS, fora que, eu estou ciente de que tenho que fazer esses "módulos extras", entretanto, não sei como fazer e é isso que eu quero, entendes?

 

Quero aprender a fazer, ou indicações a respeito de como fazer ou algum módulo já pronto, porém, adaptável ao meu site.

 

Desde já, grato!

 

Abraços! ;)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não, fui eu mesmo. Desconheço PHP, no entanto, consigo me virar com HTML/CSS.

 

Bom, Anderson, você deveria definir mais a sua resposta porque estou perdido aqui. Eu fiz 3 (três) perguntas e você singulariza a situação.

 

Que alteração que será necessário fazer desde o começo?

 

Desde já, grato.

Abraços! ;)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Kaminari,

 

O seu site é apenas em html?

Se for, é um site estático que não permite interações com o usuário, tipo comentários e votações.

 

Se deseja essas funcionalidades será necessário refazer todo o backend, aprender php e mysql.

Compartilhar este post


Link para o post
Compartilhar em outros sites

O site é em PHP, está funcionando normalmente, o sistema de notícias, tudo. Eu só quero que vocês me ajudem a aplicar esses sistemas que eu pedi, só isso.

 

Já procurei na internet, mas de vez enquando da um erro um tanto virtuoso que compromete o site e eu acabo deixando por isso mesmo. Gostaria que vocês me indicassem algum script, algum código, que tenha a função dessas solicitações citadas a cima, entenderam?

 

O site é em PHP, dinâmico, tem banco de dados, tem interação entre ambos, enfim, só me ajudem.

 

Vocês estão botando defeitos onde não têm, entenderam? XD

 

Desde já, grato.

Abraços! ;)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ok,

Vamos lá:

 

A página que exibe a notícia recupera essa noticia de um banco de dados, certo?

Provavelmente essa tabela do DB tem os campos ID, titulo, conteudo, etc...

 

para começar, você cria dois novos campos nessa tabela, chamados "likes" e "dislikes" do tipo smallint.

 

Esse é o primeiro passo.

 

Poste se conseguir ou se tiver duvida como fazer.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Prontinho, criei os campos na tabela do sistema de notícias.

 

Você não acha mais fácil explicar tudo de uma vez? Eu faço tudo que eu conseguir, o que eu não conseguir, eu posto. Porque assim além de ser mais demorado irá poluir demais o tópico.

 

Desde já, grato.

Abraços! ;)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Certo,

 

O conceito é o seguinte:

Cada noticia exibida terá um botão de gostei e um botão de não gostei. Esses botões você cria em html/css na página que exibe a noticia.

Quando uma pessoa clicar em um desses botões, o sistema grava na tabela o voto dessa pessoa no campo correspondente.

 

crie uma página registravoto.php

 

nessa pagina inclua uma conexão com seu DB.

inclua também o seguinte código PHP:

 

$voto = $_POST['voto']; 
$cod_noticia = $_POST['cod_noticia '];  
if ($voto == 'like' && $cod_noticia!="") mysql_query("UPDATE SuaTabelaDeNoticias SET likes = likes +1 WHERE CampoIdNoticia = $cod_noticia"); 
if ($voto == 'dislike' && $cod_noticia!="") mysql_query("UPDATE SuaTabelaDeNoticias SET dislikes = dislikes +1 WHERE CampoIdNoticia = $cod_noticia");

 

na pagina que exibe a noticia você cria um form com metodo POST e Action="registravoto.php" e ainda um radio group assim:

 

<input type="radio" name="voto" value="like"> Gostei!<br> 
<input type="radio" name="voto" value="dislike"> Não gostei

 

você ainda deve criar um hidden input com o ID da noticia.

 

O formulário vai enviar para registravoto.php o codigo da noticia e o voto do usuário.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você poderia refinar mais um pouco esta resposta?

 

É, é chato, mas não entendo meados de PHP, nem ao menos como fazer uma conexão com o banco de dados eu sei. Poderia postar os códigos completos? Com o form já preparado? E, poderia me explicar como fazer um "hidden input" com o ID da notícia?

 

Lembrando: TODO o artigo tem que ter esse "Gostei" e "Não gostei", ok?

 

Um outro detalhe, após você me solucionar essa dúvida com o botão de "Gostei" e "Não gostei", será que é possível você dar uma atençãozinha voltada a minha dúvida a respeito do sistema de comentários?

 

Você está no caminho certo de encerrar as minhas dúvidas, só falta refinar um pouquinho mais a sua resposta. Porque sou leigo e estou interpretando código por código e realmente, está difícil. Estou lendo documentações PHP, fazendo o possível, mas no momento é inviável pra mim porque estou com um tanto de pressa.

 

Desde já, MUITO obrigado!

Um forte abraço! ;)

Compartilhar este post


Link para o post
Compartilhar em outros sites

poste o codigo da pagina que exibe a noticia e a estrutura da tabela de noticias

Compartilhar este post


Link para o post
Compartilhar em outros sites

Amigo, tem alguma coisa errada. Você diz que fez o site com consultas ao banco de dados para exibir as notícias e logo em seguida diz que não sabe fazer a conexão com o banco de dados. Qual a real situação?

 

Para resolver por conta própria, pesquise, estude e analise os tópicos existentes sobre o assunto. Poste informações sobre o que está fazendo, como está fazendo, referências de pesquisa, o quê entendeu, etc., pois isso ajuda-nos a entender como está fazendo e tentar ajudá-lo de forma simples e objetiva.

 

Caso queira suporte particular, consulte:

Empregos / Currículos / Parcerias e Negócios

ou

Mercado iMasters

 

Normas do Forum

Equipe de Moderação

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá, Mathias Rezende!

Tentei ser o mais específico, mas um detalhe importante eu deixei passar: o sistema de notícias é do Red FeniX, eu apenas migrei ao meu site. Ele é totalmente editável e está funcionando 100%.

 

------------------------------------------------------------

 

tarilonte

A página é esta:

<?php

/**
 * Arquivo responsável por listar e exibir as notícias
 */
$act = $_GET["act"];

if($act == "noticias") {
	
	$id = intval($_GET["id"]);
		
	$sql = "SELECT * FROM $tablenews WHERE NewID='$id'";
	
	$query = $pag->Pag($sql);

	$rows = $news->execQuery($sql, 1, 0);
	$arr = $news->execQuery($sql, 0, 2);
	
	if($rows > 0) {
		?>
		<div id="esboço">
		<div id="topo_noticia">
		</div>
		<div id="on">
		<?php
		echo "<div id='data'>Artigo adicionado em <b>".$news->formDateTime($arr->data, "data")."</b> às <b>".$news->formDateTime($arr->data, "hora")."</b></div>";
		echo "<div id='z_categoria'>Na categoria <b>".$arr->categoria."</b></div> <br>";
		echo "<div id='title'><span>".$arr->titulo."</span></div>";
		echo "<div id='sub'><span>".$arr->sub_titulo."</span></div>";
		echo "<div id='linha_news'></div>";
		echo "<div id='noticia'>".$arr->noticia."</div> <br />";
		echo (!empty($arr->fonte)) ? "<div style='margin-top: 8px;font-size: 14px;'><b>Fonte:</b> ".$arr->fonte."</div>" : '';
		echo "<div id='tags'>Tags • ".$arr->tags."</div>";
		echo "<div id='por'>Por <u>".$arr->autor."</u></div>";	
		?>
		<br>
		</div>
		</div>
<?
	}
	else {
		
		echo "Notícia Inválida!";
	}
}
else {

	echo "<title>Exibindo Notícias</title>";
	$sql = "SELECT * FROM $tablenews ORDER BY NewID DESC";
	
	$query = $pag->Pag($sql);

	$rows = $news->execQuery($sql, 1, 0);

	if($rows > 0) {
		
		while($arr = mysql_fetch_object($query)) {
			
			echo "
			<div id='c_esportes'>
			<img src=".$arr->thumb." style='float: left; padding: 0px; height: 100px; width: 160px;' title='".$arr->sub_titulo."'>
			<a class='title' href='index.php?act=noticias&id=".$arr->NewID."'>".$arr->titulo."</span></a>
			</div>
			
			
			<div id='cdesc'>
			<p>Postado em <b>".$news->formDateTime($arr->data, "data")."</b>, as <b>".$news->formDateTime($arr->data, "hora")."</b> | por <b>".$arr->autor."</b><br></p>			
			</div>
			";			
		}
		echo "<br /> <div id='pages'>";
		$pag->ConstructPagsAdmin();
		echo "</div>";
	}
	else {
		
		echo "Nenhuma notícia cadastrada ainda!";
	}
}
?>

A estrutura é esta:

Imagem Postada

 

Postei em imagem para facilitar.

 

Desde já, grato.

Abraços! ;)

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.