Ir para conteúdo
Fórum Script Brasil
  • 0

Spammers Nos Comentários Do Meu Blog


sbarros

Pergunta

Bom dia amigos,

Tenho um Blog e recebo diariamente comentários imbecis e medíocres. Uso o Bad-bahavior mas não resolve como também .htaccess com uma listagem de IPs, que também não resolve. Pensei na possibilidade de alterar o código de modo que o comentário fosse me enviado por e-mail e não mais incluido de imediato na página. Caso o comentário não fosse um spam incluiria manualmente na base de dados.Gostaria que alguém me ajudasse a alterar a parte onde se insere o comentário no código que vai abaixo:

// comment entry form

print "<table width='100%' cellpadding='5' cellspacing='0'><tr><tudo>\n";

print "<form method='POST' action='comment_add.php'>\n";

print " <input type='hidden' name='blogid' value='".$id."'>\n";

print " <table border='0' cellspacing='1' cellpadding='2' bgcolor='".$rgb_commentform_bg."' align='center'>\n";

print " <tr><tudo colspan='2' bgcolor='".$rgb_commentform_banner_bg."' align='center'><span class='small'><b>Formulário para Adicionar Comentário</b></span></tudo></tr>\n";

print " <tr><tudo bgcolor='".$rgb_commentform_field_bg."'><span class='small'>Nome</span></tudo><tudo bgcolor='".$rgb_commentform_input_bg."'><input type='text' name='username' size='70' class='text'></tudo></tr>\n";

print " <tr><tudo bgcolor='".$rgb_commentform_field_bg."'><span class='small'>E-Mail</span></tudo><tudo bgcolor='".$rgb_commentform_input_bg."'><input type='text' name='email' size='70' class='text'></tudo></tr>\n";

print " <tr><tudo bgcolor='".$rgb_commentform_field_bg."'><span class='small'>URL</span></tudo><tudo bgcolor='".$rgb_commentform_input_bg."'><input type='text' name='url' size='70' class='text'></tudo></tr>\n";

print " <tr><tudo bgcolor='".$rgb_commentform_field_bg."'><span class='small'>Comentário</span></tudo><tudo bgcolor='".$rgb_commentform_input_bg."'><textarea name='comment' cols='70' rows='3' class='text'></textarea></tudo></tr>\n";

print " <tr><tudo bgcolor='".$rgb_commentform_field_bg."' colspan='2' align='right'><input type='submit' value='Adicionar Comentário' class='button'></tudo></tr>\n";

print " </table>\n";

print "</form>\n";

print "</tudo></tr></table>\n";

Arquivo 'comment_add.php'

<?php

include "config.php";

include "sys_main.php";

require_once("bad-behavior/bad-behavior-generic.php");

$con = db_connect();

// prepare data for database

$blogid = mysql_escape_string($_POST["blogid"]);

$username = sql_quote(mysql_escape_string(strip_tags($_POST["username"])));

$email = sql_quote(mysql_escape_string(strip_tags($_POST["email"])));

$url = sql_quote(mysql_escape_string(strip_tags($_POST["url"])));

$comment = sql_quote(mysql_escape_string(strip_tags($_POST["comment"])));

if ( preg_match("/[a-zA-Z0-9]/",$username) && preg_match("/[a-zA-Z0-9]/",$comment) ) {

// fine

$problem = false;

} else {

$problem = true;

}

if ($problem==false) {

$sql = "INSERT INTO blog_comments (nBlogId,cUsername,cEMail,cURL,cComment) VALUES (".$blogid.",".$username.",".$email.",".$url.",".$comment.");";

$result = mysql_query($sql,$con);

if ($result!=false) {

$sql = "UPDATE blog SET nComments=nComments+1 WHERE nIdCode=.$blogid;

mysql_query($sql,$con);

$url = $_SERVER["HTTP_REFERER];

header("Location: ".$url);

} else {

print "<li>Problem Processing SQL<br>[".$sql."]";

}

} else {

$url = $_SERVER["HTTP_REFERER"];

header("Location: ".$url);

}

?>

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0

Cara, tu vai receber um e-mail notificando que tu recebeu um novo comentário e então tu entra no sistema para autorizar isso???

Porque não aplica direto no sistema aí tu entra lá direto e já autoriza os coments ou exclui... (não sei qual a popularidade do seu blog, mas acredito que enxeria sua caixa de e-mails desnecessáriamente...)

O que tu podes fazer é criar um campo que controle a exibição dos comentários, se este campo estiver com 1 pode exibir o coment, se estiver com 0 não exibe (seria o que estivesse arrecem postado até que tu entrasse no sistema e fizesse esse controle no braço)

aí na page que exibe os comentários tu só exibiria os que contivessem 1 nesse campo novo que tu criou...

Sacou??? Basicamente é isso... ou então tu podes pensar em uma maneira de pegar os ips dos spammes e bloquear o acesso ao teu blog...

Abraço!

Link para o comentário
Compartilhar em outros sites

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.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,4k
×
×
  • Criar Novo...