Como Criar um Sistema de Comentários com Moderação em PHP
Quer permitir que visitantes comentem em suas páginas ou posts, mas sem se preocupar com spam ou conteúdo ofensivo? Neste tutorial, você aprenderá a criar um sistema simples de comentários em PHP com uma etapa de moderação antes da exibição pública.
Passo 1: Criando o Formulário de Comentários
Primeiro, crie um arquivo chamado comentarios.php
com o formulário e o código que salva os comentários em um arquivo para moderação.
<?php
if ($_SERVER["REQUEST_METHOD"] == "POST") {
$nome = htmlspecialchars($_POST["nome"]);
$mensagem = htmlspecialchars($_POST["mensagem"]);
$data = date("d/m/Y H:i");
$comentario = "<p><strong>$nome</strong> em $data<br>$mensagem</p>\n";
file_put_contents("comentarios_pendentes.txt", $comentario, FILE_APPEND);
echo "<p style='color: green;'>Comentário enviado para moderação.</p>";
}
?>
<form method="post" action="" style="margin-top: 20px;">
<label>Nome:</label><br>
<input type="text" name="nome" required style="width: 100%; padding: 8px; margin-bottom: 10px;">
<br>
<label>Comentário:</label><br>
<textarea name="mensagem" required rows="4" style="width: 100%; padding: 8px;"></textarea>
<br><br>
<button type="submit" style="background-color: #007bff; color: white; border: none; padding: 10px 15px; cursor: pointer;">Enviar Comentário</button>
</form>
Passo 2: Criando os Arquivos de Comentários
Crie dois arquivos de texto no mesmo diretório:
comentarios_pendentes.txt
– Armazena os comentários enviados e ainda não moderados.comentarios_aprovados.txt
– Comentários já aprovados e prontos para exibição.
Passo 3: Moderando os Comentários
Crie um arquivo chamado moderar.php
para revisar e aprovar comentários:
<?php
$pendentes = file("comentarios_pendentes.txt");
echo "<h2>Comentários Pendentes</h2>";
echo "<form method='post'>";
foreach ($pendentes as $index => $comentario) {
echo "<input type='checkbox' name='aprovar[]' value='$index'> $comentario<br>";
}
echo "<br><button type='submit'>Aprovar Selecionados</button>";
echo "</form>";
if ($_SERVER["REQUEST_METHOD"] == "POST" && isset($_POST["aprovar"])) {
$aprovados = "";
$novosPendentes = "";
foreach ($pendentes as $index => $comentario) {
if (in_array($index, $_POST["aprovar"])) {
$aprovados .= $comentario;
} else {
$novosPendentes .= $comentario;
}
}
file_put_contents("comentarios_aprovados.txt", $aprovados, FILE_APPEND);
file_put_contents("comentarios_pendentes.txt", $novosPendentes);
echo "<p style='color: green;'>Comentários aprovados com sucesso!</p>";
}
?>
Passo 4: Exibindo Comentários Aprovados
Para mostrar apenas os comentários já aprovados, crie um arquivo chamado exibir_comentarios.php
:
<?php
if (file_exists("comentarios_aprovados.txt")) {
echo file_get_contents("comentarios_aprovados.txt");
} else {
echo "<p>Nenhum comentário ainda.</p>";
}
?>
Resultado Final
Você terá:
- Um formulário onde usuários deixam comentários.
- Um arquivo onde você revisa e aprova os comentários.
- Outro arquivo que exibe somente comentários aprovados no seu site.
Comentário enviado para moderação. Após aprovação:.
Arquivos:
Comentar
Moderar comentários
Exibir comentários
Dica: Para um sistema mais avançado, considere usar um banco de dados e painel administrativo protegido por login.
Precisa de um sistema de comentários mais robusto com:
- ✔️ Login de usuários e avatares
- ✔️ Aprovação automática com filtros de spam
- ✔️ Integração com bancos de dados e AJAX
Acesse: www.hostssd.com.br/contato e solicite um orçamento sob medida.