Estoy en Twitter. Seguime.

Cómo combatir el spam en phpBB

28 de noviembre de 2006 por Diego Rottman

Todo administrador de un foro más o menos popular que corra bajo phpBB estará padeciendo por estos días una oleada de spam. Mensajes de spambots van copando el lugar donde hasta entonces discutían humanos.

La comunidad de phpBB ofrece tres grandes tópicos sobre el tema (1, 2 y 3) que confunden más de lo que orientan.

Pero ayer se publicó un mensaje que propone una solución eficaz y sencilla que no exige captchas (los codiguitos de letras y números para verificar que se trata de un ser humano y no de un robot) ni otros complejos sistemas de verificación. Y, a ojos del usuario final, nada cambia. Lo testeé y (hasta que los spammers le encuentren la vuelta) funciona. Vale la pena implementarlo por el poco esfuerzo que exige:

1. Edite la plantilla ubicada en
templates/su_estilo/posting_body.tpl. Busque la etiqueta “form” y agregue enctype=”multipart/form-data” como se muestra acá:

<form action=”{S_POST_ACTION}” method=”post” name=”post” onsubmit=”return checkForm(this)” enctype=”multipart/form-data”>

2. Edite el archivo posting.php alrededor de la línea 560, agregando lo que figura en negrita:

switch ( $mode )
{
case 'editpost':
case 'newtopic':
case 'reply':
$username = ( !empty($HTTP_POST_VARS['username']) ) ? $HTTP_POST_VARS['username'] : '';
$subject = ( !empty($HTTP_POST_VARS['subject']) ) ? trim($HTTP_POST_VARS['subject']) : '';
$message = ( !empty($HTTP_POST_VARS['message']) ) ? $HTTP_POST_VARS['message'] : '';
$poll_title = ( isset($HTTP_POST_VARS['poll_title']) && $is_auth['auth_pollcreate'] ) ? $HTTP_POST_VARS['poll_title'] : '';
$poll_options = ( isset($HTTP_POST_VARS['poll_option_text']) && $is_auth['auth_pollcreate'] ) ? $HTTP_POST_VARS['poll_option_text'] : '';
$poll_length = ( isset($HTTP_POST_VARS['poll_length']) && $is_auth['auth_pollcreate'] ) ? $HTTP_POST_VARS['poll_length'] : '';
$bbcode_uid = ''; if(!eregi('^multipart/form\-data',trim($_SERVER['CONTENT_TYPE'])))
{
echo "No se acepta spam. Tómeselas.";
exit();
}
prepare_post($mode, $post_data, $bbcode_on, $html_on, $smilies_on, $error_msg, $username, $bbcode_uid, $subject, $message, $poll_title, $poll_options, $poll_length);

¡Listo! Sólo resta subir los dos archivos al servidor.


Volver

Archivado en: cibercultura


Calendar

diciembre 2016
L M X J V S D
« Dic    
 1234
567891011
12131415161718
19202122232425
262728293031  

Most Recent Posts