Foros del Web » Programando para Internet » PHP »

si usuario no coloca codigo de captcha correcto renviar al formulario

Estas en el tema de si usuario no coloca codigo de captcha correcto renviar al formulario en el foro de PHP en Foros del Web. Hola, no se muy bien como conseguir esto, osea en un formulario al final tengo un captcha y lo que pretendo es que si el ...
  #1 (permalink)  
Antiguo 07/12/2011, 08:56
 
Fecha de Ingreso: mayo-2011
Mensajes: 1.201
Antigüedad: 12 años, 11 meses
Puntos: 10
si usuario no coloca codigo de captcha correcto renviar al formulario

Hola, no se muy bien como conseguir esto, osea en un formulario al final tengo un captcha y lo que pretendo es que si el usuario no escribe bien el codigo muestre otra vez el formulario pero con los datos que tenia ya escritos y el mensaje del echo, yo en la pagina del action del formulario tengo esto:

Código PHP:
Ver original
  1. <?php
  2.  
  3.  
  4. if( md5( $_POST['codigo'])!= $_SESSION[ 'captcha' ]){
  5.        echo "codigo incorrecto, pruebe otra vez!";
  6.  } else {
  7. //aqui es donde proceso los datos del formulario
  8. }
  9. ?>

pero claro de esta forma si el usuario inglesa mal el codigo solo le sale el mensaje, no se si es mejor que en el mismo script del formulario poner el if con la comprobacion del capcha, espero alguna ayuda, saludos.
  #2 (permalink)  
Antiguo 07/12/2011, 09:39
Avatar de charlyalegret  
Fecha de Ingreso: septiembre-2011
Ubicación: Barcelona
Mensajes: 705
Antigüedad: 12 años, 6 meses
Puntos: 140
Respuesta: si usuario no coloca codigo de captcha correcto renviar al formulario

Hola! que yo sepa, con php e if no lo puedes conseguir usando una única página, ya que php trabaja en el servidor y cuando el usuario rellena el capcha la página está en el navegador...

Trabajando como lo haces en un archivo aparte como lo que muestras, con php puedes usar un header location para volver atrás, el problema es que la página se recarga y pierdes los datos escritos por el usuario. Para no perderlo, puedes usar javascript o similar. Una solución muy sencilla es colocar el siguiente script en lugar del echo "codigo incorrecto blablabla":

<script>setTimeout("history.back(1)", 1);</script>

Saludos

Edito: ahora que caigo, lo que tampoco me queda claro es si así el capcha será el mismo, se refrescará o qué pasará.... saludos!
  #3 (permalink)  
Antiguo 07/12/2011, 09:41
 
Fecha de Ingreso: agosto-2011
Ubicación: España
Mensajes: 445
Antigüedad: 12 años, 7 meses
Puntos: 89
Respuesta: si usuario no coloca codigo de captcha correcto renviar al formulario

También podrías usar ajax para que compruebe si el código ingresado es el correcto.

Etiquetas: captcha, correcto, formulario, usuarios
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 23:59.