Foros del Web » Programando para Internet » PHP »

Duda Muy Fácil

Estas en el tema de Duda Muy Fácil en el foro de PHP en Foros del Web. Hola, me gustaría implementar un sistema anti-spam ultra sencillo para un formulario de contacto en el cual hay un campo que está oculto via css. ...
  #1 (permalink)  
Antiguo 01/04/2010, 19:15
_carlosh
Invitado
 
Mensajes: n/a
Puntos:
Duda Muy Fácil

Hola,

me gustaría implementar un sistema anti-spam ultra sencillo para un formulario de contacto en el cual hay un campo que está oculto via css. Supuestamente los bots lo rellenarían como si estuviese visible según me han dicho, aunque a me siguen llegando spam desde esos bots y ese campo ('Validación' se llama) no lo están rellendando. Os pongo el código a ver si está mal y muchas gracias de antemano.

HTML:

<div id="validation" style="display:none">
<input name="Validation" type="text" id="Validation"/>
</div>

PHP:

$Validation = Trim(stripslashes($_POST['Validation']));
$validationOK=true;
if (Trim($Validation)!="") $validationOK=false;
if (!$validationOK) {
print "<meta http-equiv=\"refresh\" content=\"0;URL=error.html\">";
exit;
}
  #2 (permalink)  
Antiguo 01/04/2010, 20:09
 
Fecha de Ingreso: octubre-2008
Mensajes: 76
Antigüedad: 15 años, 5 meses
Puntos: 3
Respuesta: Duda Muy Fácil

yo uso esto para validar y me sirve por lo menos tenia cosas que me generaban spam y no me entraron mas. suerte y espero que te sirva.
captcha.php
Código PHP:
<?php
session_start
();
function 
randomText($length) {
    
$pattern "abcdeghkmnostuxz";
    for(
$i=0;$i<$length;$i++) {
      
$key .= $pattern{rand(0,16)};
    }
    return 
$key;
}

//$_SESSION['tmptxt'] = randomText(4);
$captcha imagecreatefromgif("img/bgcaptcha.gif");
$colText imagecolorallocate($captcha000);
imagestring($captcha5167$_SESSION['tmptxt'], $colText);

header("Content-type: image/gif");
imagegif($captcha);
?>

Código HTML:
<td><img src="captcha.php" width="100" height="30" style="margin-right: 10px;" alt="" /></td> 

Etiquetas: Ninguno
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 21:23.