| |||
Actualizar un captcha Hola: A ver si alguien me puede orientar sobre mi problema, porque llevo hora y media buscando en el maravilloso Google, y después de visitar 70 u 80 páginas estoy como al principio. Tengo un formulario con un textarea y pongo un captcha antes de enviarlo, mediante <img src="captcha.php" width="250" height="30">. Todo me va bien, excepto un pequeño detalle: Si la imagen del captcha tiene algún caracter poco claro y el usuario se equivoca, cuando lo vuelvo a la página inicial del formulario con "history.go(-1)" se vuelve a encontrar con el mismo captcha, con lo que puede seguir teniendo el mismo problema otra vez. Tengo la posibilidad de refrescar la página, pero entonces pierde todo el texto incluido en la textarea. He visto en otras ocasiones algunas webs que ponen al lado de la imagen del captcha un enlace "cambiar" que actualiza la imagen cada vez que se clikea, pero ahora no consigo encontrar ninguna para ver el código fuente. ¿Podeis darme alguna orientación de como actualizar el captcha sin que se pierda el contenido del textarea? |
| |||
Re: Actualizar un captcha Efectivamente. El captcha crea una session. Estupenda la ayuda. Con la funcion actucap se recarga el captcha en IE. Solo hay un problema: En Firefox no me actualiza el captcha. Voy a probar otra vez. Gracias de todas formas. |
| |||
Re: Actualizar un captcha Cita: Aquí lo tienes. Lo copie de Internet, pero siento no poder poner los créditos del autor, porque hace mucho tiempo que lo obtuve y luego lo modifiqué bastante, pero seguro que si lo buscas lo podrás encontrar en www.hotscripts.com:<html> <head> <script> function actucap(){ obj=document.getElementById("cap"); if (!obj) obj=window.document.all.cap; if (obj){ obj.src="captcha.php"; } } </script> </head> <body> <form method="post" action="comprobar_captcha.php"> <p>Nombre / Nick: <input type="text" name="nombre"></p> <p>Email: <input name="email" type="text" size="45"></p> <p>Asunto: <input name="asunto" type="text" size="60"></p> <p>Mensaje:</p> <p><textarea name="mensaje" cols="80" rows="10"></textarea></p> <p>Código de seguridad: <img id="cap" name="cap" src="captcha.php"><a href="javascript: actucap();">Cambiar</a></p> <p>Repite el Código de seguridad: <input type="text" name="CAPTCHA_CODE" style="width: 50px;"></p> <p style="padding-top: 5px;"><input type="submit" name="enviar" value="Enviar Mensaje"> <input type="reset" name="enviar" value="Borrar datos"></p> </form> </body> </html> |
| ||||
Re: Actualizar un captcha Cita: mm bueno , de manera personal no me gusta el historyback del javascript, yo prefiero redirecionar con head location y los "datos" los salvo a traves de sessiones. bueno yo creo que la funcion javascript, no te carga la imagen debido a un problema de cache , prueba agregandola un numero aleatorio como parametro (aunq este parametro no tiene ninguna funcion dentro del captcha) Código HTML: <script> functionactucap(){ obj=document.getElementById("cap"); if (!obj) obj=window.document.all.cap; if (obj){ obj.src= "captcha.php?" + Math.random() ; } } </script>
__________________ Blog sobre Programación Una mirada conciente para identificar una solución sencilla. Ingeniería de Software. appvision.cl |
| ||||
Re: Actualizar un captcha No te tira un error de JS? probá igualmente declarar la variable... Código PHP:
__________________ |
| |||
Re: Actualizar un captcha Gracias a todos por vuestras aportaciones. Finalmente voy a utilizar el script de Seppo. Me funciona perfectamente tanto en IE como en Firefox. Tendré en cuenta lo de la variable.Muchas gracias. Es una maravilla mirar estos foros. |