Com Criar Um Sistema De Comentários Em PHP E MYSQL

Hoje em dia o principal recurso que um site tem é a comunicação com o cliente.

Se a comunicação for boa, o site cresce, senão, é apenas mais um na Internet!

Um dos vários recursos que temos é o “sistema de comentários”.

Geralmente você encontra este recurso em grandes portais ou listas de discussão onde o usuário deve dar a sua opinião, sugestão ou emitir um comentário.

Na matéria de hoje, estaremos criando este recurso e mostrando de forma prática como adaptar um sistema de comentários em seu site.

comentarios

Configurando A Base de Dados MySQL

Antes de tudo, é necessário configurar a base de dados.

Com o BD já criado, acesse o ficheiro “conexao.php” e configure o ficheiro alterando as informações de acesso à base de dados (conforme script a seguir).

Após a configuração, vamos agora criar a tabela que será usada!

Criando A Tabela Na Base De Dados

Para configurar a base de dados através do script, abra o ficheiro script-sql.txt (disponível em anexo) e cole seu conteúdo no Programa utilizado para gerenciamento da base de dados.

Em nossas matérias utilizamos como padrão o MySQLFront. Caso tu também esteja utilizando este programa, clique em SQL Editor e cole o conteúdo do script (conforme código e imagem abaixo).

----- INSTALANDO A TABELA -----

CREATE TABLE `tbl_depoimentos` (
`id_depoimento` int(11) NOT NULL auto_increment,
`id_site` int(11) default NULL,
`cliente` varchar(80) default NULL,
`email` varchar(150) default NULL,
`depoimento` varchar(255) default NULL,
`data_cadastro` varchar(10) default NULL,
`status` char(1) default NULL,
PRIMARY KEY (`id_depoimento`)
);

INSERT INTO `tbl_depoimentos` VALUES (1,934,'Fábio Aquino',NULL,'Gostei muito desta praia. Era o que eu precisava para descansar e tirar férias.','2010-09-23','1');
INSERT INTO `tbl_depoimentos` VALUES (3,934,'Vanessa',NULL,'Muito bom o novo site da sua empresa, ficou bem visível os icones de procura!',NULL,'1');
INSERT INTO `tbl_depoimentos` VALUES (7,934,'Quemuel Aquino',NULL,'sdf sfs dsdfs fsdf sd fs dfsd','2010-09-23','1');
INSERT INTO `tbl_depoimentos` VALUES (9,1,'Marta Regina','modelosbrasileirasaqui@ymail.com','dfsad adf dafad fadf adf adf adf ad f','2010-11-03','0');

Após importar os dados, vamos dar continuidade às configurações?

Efetuando Configurações

Abra o ficheiro “comentario_envia.php” e efetue as configurações a seguir:

  • Configure o endereço de email que receberá as informações a serem validadas (conforme trecho a seguir):

    $email_admin = "seuemail@seusite.com"; // seu email
  • Configure o site que usará o sistema. Caso você queira, deixe como padrão a variável “$_SERVER” que trará o endereço atual (conforme trecho a seguir):

    $link_site = $_SERVER['SERVER_NAME']; // pega a URL do seu site

As demais informações poderão ser usadas de forma automática (conforme o código a seguir):

",$comentario);
$data_cadastro = date ('Y-m-d');

$query_comentario = "INSERT INTO tbl_depoimentos(id_site, cliente, email, depoimento, data_cadastro, status) VALUES('$id_site', '$nome', '$email', '$comentario', '$data_cadastro', '0')";
$rs_comentario = mysql_query($query_comentario);

// SELECIONA PARA VALIDAR A APROVAÇÃO
$query_select_cad = "SELECT * FROM tbl_depoimentos where id_site = '$id_site' AND cliente = '$nome' AND email = '$email' and data_cadastro = '$data_cadastro' and status = '0'";
$rs_select_cad = mysql_query($query_select_cad);

$campo_select_cad = mysql_fetch_array($rs_select_cad);
$id_depoimento_select_cad = $campo_select_cad['id_depoimento'];

$assunto = "Envio de Comentário - $link_site";

$mensagem = "

Prezado Administrador,

Recebemos através do site $link_site o comentário abaixo descrito:

COMENTÁRIO:

Nome: $nome
EMail: $email
Comentário:
$comentario


CANCELAR
- APROVAR

Atenciosamente,

Central de Relacionamentos
$link_site ©

:: Politica de Privacidade::

O envio e recebimento de nossas mensagens procura estar alinhado com o Código

de Ética Anti-SPAM que objetiva reger e orientar a

comunicação institucional, comercial e publicitária

enviada sob a forma de mensagens eletrônicas.


Temos a forte convicção de que

a relação entre cliente e empresa deve ser marcada pelo

conceito de parceria, fortalecendo o vínculo estabelecido em bases de

confiança e apoio mútuo.

";

$headers = "MIME-Version: 1.0" . "\r\n";

$headers .= "Content-type:text/html;charset=iso-8859-1" . "\r\n";// More headers

$headers .= "From: $email" . "\r\n"; // 'From: $email_dest' . "\r\n";

mail("$email_admin", "$assunto", "$mensagem", "$headers");

if (mail){

?>

Página Inicial

A página inicial do sistema é prática e pode ser customizada facilmente.

Até para facilitar, estamos usando recursos de “captcha” que são imagens distorcidas.

O objetivo é ter certeza de que não é uma máquina quem esta enviando a requisição.

Bem… ele deverá funcionar assim:

  1. O internauta preenche o formulário com seu comentário;
  2. O sistema lhe envia uma mensagem (com a opção de excluir ou aprovar o comentário);
  3. Você aprova o comentário e ele entra online. Exclui e ele é excluído automaticamente da base de dados.

Até para facilitar, na página “index.php” listamos abaixo do formulário os comentários cadastrados.

Ele poderá ser removido de lá e disponibilizado em uma página com um layout apropriado.

Vamos verificar o código?





.:: Comentários ::.


Nome:
Email:
Comentário:


Reload Image

Digite o código acima:


check($_POST['code']);
?>


MENSAGENS PUBLICADAS:

";
echo $msg_depoimento = $campo_depoimentos['depoimento'];
echo "

";
}
?>


OBS.: Como trata-se de uma ferramenta para testes, estou lhe enviando com a validação da Captcha "apenas" com o campo em branco. Caso você queira, poderá criar outras instruções para melhorar o sistema.

Aprovando o Ficheiro

Veja no ficheiro "script_comentario.php" que após clicar em "aprovar", haverá uma validação na base de dados de forma bem prática (conforme script abaixo descrito).








Outros Ficheiros

Você poderá verificar no ficheiro em anexo que temos fontes, arquivos de audio, aliás, outros ficheiros que são encontrados livremente na Internet, mas que servem para complementar seu código.

Bem... não é um sistema 100% perfeito, pois você pode melhorar e muito, mas para quem precisa de algo básico, já te dá uma idéia de como trabalhar com um sistema de comentários.

Espero que esta ferramenta lhe seja útil no dia a dia.

1 Star2 Stars3 Stars4 Stars5 Stars (2 votes, average: 5.00 out of 5)

29 Responses

  1. Testei o sistema aqui, porém, dá o seguinte erro quando testo:

    Warning: include(securimage.php) [function.include]: failed to open stream: No such file or directory in /home/artfestaseventos/www/comentarios/index.php on line 74

    Warning: include() [function.include]: Failed opening 'securimage.php' for inclusion (include_path='.:/usr/local/lib/php') in /home/artfestaseventos/www/comentarios/index.php on line 74

    Fatal error: Class 'Securimage' not found in /home/artfestaseventos/www/comentarios/index.php on line 75
    Pelo que entendi, está faltando o arquivo "securimage.php" . Teria como disponibilizar o script deste arquivo? Creio que só está dependendo disto para o sistema funcionar aqui. Obrigado desde já. Ah, e parabéns pelo site. Tem me sido bastante útil.

  2. Olá Márcio, Vi que você está customizando o ficheiro.
    Por favor, antes de fazer isso, verifique certinho o caminho, pois o securimage.php está incluso no script em anexo e ele só funcionará se tiver tudo certo.

    Se tiver qualquer dúvida quanto a configuração, entre em contato comigo no MSN grupoqsa@hotmail.com e estarei lhe ajudando a configurar o ficheiro.

  3. Bom fiz do jeito como mostra no tutorial acima mais aparece o seguinte erro:

    Warning: include(securimage.php) [function.include]: failed to open stream: No such file or directory in /home/th49221/public_html/index.php on line 74
    Warning: include(securimage.php) [function.include]: failed to open stream: No such file or directory in /home/th49221/public_html/index.php on line 74
    Warning: include() [function.include]: Failed opening 'securimage.php' for inclusion (include_path='.:/usr/lib/php:/usr/local/lib/php') in /home/th49221/public_html/index.php on line 74
    Fatal error: Class 'Securimage' not found in /home/th49221/public_html/index.php on line 75

    Eu acho que está faltando algumas imagens e outras coisas…

    1. Olá Ricardo! Um sistema de comentários aumenta a interatividade com os visitantes do seu site. Um Abraço! Rui Soares

  4. Excelente material, nunca tinha visto um tutorial tão completo assim na internet.

  5. Poderia disponibilizar os arquivos do seu tutorial, estou aprendendo agora a linguagem php e estou tendo dificuldades em colocar esse sistema em prática. Desde já agradeço pela sua compreensão. 

  6. Para que pedir os arquivos prontos para baixar, se os códigos já estão todos aí na página?!
    Virei um Fã do site "webmaster.pt", já tem até um atalho na Área do Trabalho!!!

  7. Muito bom o tutorial, só não achei os anexos, poderia disponibilizá-los.

    Obrigado!!

  8. Boa noite.

    Desculpe-me a pergunta. É só copiar e colar na página, além de mudar o nome do site? Feito isso, já funciona?
    Obrigado por sua disponibilidade. abraços

  9. Bom galera realmente é um ótimo post esse, mais este erro que todos estão reclamando consegui resolver era a falta do securimage.php vou botar o link de um site que vocês podem baixar, depois só upar todos os arquivos que estão la pra dentro da pasta que esta seu sistema de comentarios, pronto sem problemas tudo funciona, "http://www.phpcaptcha.org/download/" qualquer coisa só falar comigo no email ou facebook gring0-revolt@hotmail.com

  10. Otima explicação e uma excelente artigo, mas gostaria do anexo, nao conseguir ver..

  11. dar tudo certinho mas quando clico em aprovar 
    abre uma mensagem dizendo que o google não conseguiu achar o endereço do meu site
    será  por que é um site grátis?

  12. Hmm man otimo sistema vlw por compartilhar, irei ultiliza-lo no meu proximo site .

  13. Cara, você me ajudou muito, era exatamente o que eu precisava para o código de uma empresa que estou terminando, não é  fácil achar posts de aprovação na internet e ainda mais em português! Parabéns!!!

  14. Boas. Onde poderei fazer o download dos ficheiros? Parece-me que deve ser esse codigo que eu pretendo. Eu ando há dois dias à procura de um sistema de comentários com: 1) captcha 2) Dia Mês Ano Horas 3) O comentário só poderá ser inserido na mesma pagina logo abaixo do formulário depois da aprovação. Como ainda não percebo mto de php e mysql, estou-me a ver grego… alguém me consegue safar?

Leave a Reply

Your email address will not be published. Required fields are marked *


Como Criar Um Site, Blog - WebMaster.pt