Foros del Web » Programando para Internet » PHP »

Rallada mental con un if^^

Estas en el tema de Rallada mental con un if^^ en el foro de PHP en Foros del Web. Bueno, el caso es que acabo de hacer un antispam... muestro un color y has de escribir el nombre en mayúsculas. Podría hacerlo con java ...
  #1 (permalink)  
Antiguo 20/09/2008, 21:08
 
Fecha de Ingreso: agosto-2006
Ubicación: MiCasa-Valencia-España
Mensajes: 116
Antigüedad: 17 años, 7 meses
Puntos: 0
Rallada mental con un if^^

Bueno, el caso es que acabo de hacer un antispam... muestro un color y has de escribir el nombre en mayúsculas.
Podría hacerlo con java pero ahora que se ha metido esto en la cabeza no paro hasta resolverlo^^.
Resulta que si dejo la casilla en blanco, no envía el mail, pero si escribo cualquier cosa si lo envía.
El código esta medio funcionando aquí: http://streosoft.es/index.php?pag=contacta

Aquí esta el código antispam:
Código PHP:
$AntiSpam = array("FF0000","0000FF","009900","000000","FFFFFF","FFFF00","999999","990099","FF66FF","FF6600","CC99CC","993300","660033");
$Color rand(0,12);
$Respuesta = array("ROJO","AZUL","VERDE","NEGRO","BLANCO","AMARILLO","GRIS","MORADO","ROSA","NARANJA","LILA","MARRON","VINO");
$Comprobar $Respuesta[$Color]; 
este es el if donde se envía el mensaje:
Código PHP:
if ($_GET['mensaje']=='enviar')
{
    if(
$_POST['antispam']==$Comprobar)
    {
        
mail($Para$De$Mensaje$Cabecera);
        echo 
"Su mensaje será procesado tan pronto como sea posible. Será redireccionado en 5 segundos.";
        
$Redireccion;
    }
    else
    {
        echo 
"No se envió el mensaje correctamente, será redireccionado en 5 segundos.";
        echo 
$Redireccion;
    }
}
else
{
    echo 
"No se envió el mensaje correctamente, será redireccionado en 5 segundos.";
    echo 
$Redireccion;

Seguramente sera una tontería, o que soy un manco^^ si alguien lo ve^^
thanks de antemano.
  #2 (permalink)  
Antiguo 21/09/2008, 01:35
Avatar de jerkan  
Fecha de Ingreso: septiembre-2005
Mensajes: 1.607
Antigüedad: 18 años, 7 meses
Puntos: 19
Respuesta: Rallada mental con un if^^

Mmm, en estos casos se suele guardar la variable del captcha (en tu caso, el color) en una variable de sesión.
El primer trozo de código iría en la página del formulario. Y el segundo, en la del proceso del formulario. Lo digo porque no sé de dónde sacas $Comprobar en el segundo trozo de código.

Un saludo
  #3 (permalink)  
Antiguo 21/09/2008, 01:40
 
Fecha de Ingreso: agosto-2006
Ubicación: MiCasa-Valencia-España
Mensajes: 116
Antigüedad: 17 años, 7 meses
Puntos: 0
Respuesta: Rallada mental con un if^^

^^ vale ya he caído muchas gracias, en la segunda parte del código.. mas arriba hago un incluye al archivo donde tengo el antispam... no había caído que al hacer ese cambio el capcha se refrescaba por lo tanto el contenido de la variable $Comprobar cambia^^.
________________________

Bueno, he optado por otra opción sin arrastrar variables de sesión, he insertado un campo oculto en el formulario con el valor de la variable, y lo he pasado con el resto de información, ahora ya esta funcionando correctamente. ;) Muchas gracias jerkan

Última edición por StReO; 21/09/2008 a las 03:12 Razón: He optado por otra opcion.
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 15:11.