Ver Mensaje Individual
  #1 (permalink)  
Antiguo 14/03/2013, 03:19
miriamgomez
 
Fecha de Ingreso: abril-2008
Mensajes: 348
Antigüedad: 16 años
Puntos: 1
Proteger formulario

Hola:

Quiero proteger mi formulario para que no me metan "mierda" en la base de datos.

este es el formulario:
Código PHP:
<?

if($_GET["CAPTCHA_CODE"] != ""){
if(
$_GET['comentario'] != ""){

if(
$_GET['email'] != ""){

    
$final=$_GET['final'];

    
$comentario=$_GET['comentario']; 
    
    
$comentario addslashes($_GET['comentario']);
$comentario strip_tags($_GET['comentario']);

    
$email=$_GET['email']; 

    if(
$_GET['nick'] == ""){ $nick="anonimo"; }else{ $nick=$_GET['nick']; }

    
$Captcha = (string) $_GET["CAPTCHA_CODE"];
    echo 
"primero='".$Captcha."'";
    echo 
"segundo='".$_SESSION['captcha']."'";
    if(
trim(strtolower($Captcha)) == $_SESSION["captcha"])  {
        
mysql_query("INSERT INTO comentarios (final,nick,comentario,email) VALUES
        ('$final','$nick','$comentario','$email')"
);
        
        echo 
"<h2>Comentario Enviado Con Exito.<BR>Espere Unos Segundos...<script type='text/javascript'>
    window.setTimeout('history.back();', 2000);
    </script></h2>"
;

    }else{
        echo 
"<p style='color: #ff0000;'><strong>El c&oacute;digo de validaci&oacute;n no ha sido ingresado o es incorrecto.</strong></p>"
    }

}else {
    echo 
"<h2>Debe Introducir Un Correo.<BR>Espere Unos Segundos...<script type='text/javascript'>
window.setTimeout('history.back();', 2000);
</script></h2>"
;
}

    
}else{
    echo 
"<h2>Debe Introducir Un Comentario.<BR>Espere Unos Segundos...<script type='text/javascript'>
window.setTimeout('history.back();', 2000);
</script></h2>"
;
}

}else{
    echo 
"<h2>Debe Introducir El Codigo de Seguridad.<BR>Espere Unos Segundos...<script type='text/javascript'>
window.setTimeout('history.back();', 1000);
</script></h2>"
;
}


?>
Buscando por internet di con esto:

Código PHP:
$_MensajeError="ERROR: caracteres no admitidos";
if (
ereg("[^A-Za-z0-9]+",$_POST['consulta'])) {
echo 
$_MensajeError;

else{
echo 
'<div class="result">Tu nombre es: '.$consulta.'</div>'

Pero no he conseguido juntarlo para que funcionen de manera correcta.

¿como dedo de integrarlo ?

El campo que mas guerra me esta dando es el de Contenido; de momento lo tengo protegido de esta manera:

$comentario=$_GET['comentario'];


$comentario = addslashes($_GET['comentario']);
$comentario = strip_tags($_GET['comentario']);


Alguna sugerencia mas?