Comunidad de diseño web y desarrollo en internet online

colocar la clásica IMAGEN para validar el formulario

Citar            
MensajeEscrito el 20 Sep 2006 05:22 pm
Hola.estoy validando unos formularios, y me detuve en un problema, lo que sucede es que estoy intentanto hacer la típica imagen que te muestran para que copies el texto que ves en la imagen en el formulario... La verdad k desearia algún tipo de consejo.. estoy revisando libros y sobre ello no encuentro nada.. cualquier ayuda sería bienvenida.. muchas gracias gente de CL.. hasta pronto

Por wizardxyz

37 de clabLevel



Genero:Masculino  

Valencia - España

msie
Citar            
MensajeEscrito el 20 Sep 2006 05:42 pm
Esas imagenes se llaman captchas. Son como un test de turing sólo que sin intervención humana.

Espero haber sido de ayuda y que tengas suerte.

Por el_itur

142 de clabLevel



Genero:Masculino  

Argentina

firefox
Citar            
MensajeEscrito el 16 Abr 2007 10:53 am

wizardxyz escribió:

Hola.estoy validando unos formularios, y me detuve en un problema, lo que sucede es que estoy intentanto hacer la típica imagen que te muestran para que copies el texto que ves en la imagen en el formulario... La verdad k desearia algún tipo de consejo.. estoy revisando libros y sobre ello no encuentro nada.. cualquier ayuda sería bienvenida.. muchas gracias gente de CL.. hasta pronto



informate aqui http://usuarios.lycos.es/waty90/usuarios/

en esta pagina registrate y puedes contactar conmigo a traves del usuario admin.
mediante un mensaje a traves de la web..
y t dare la dirrecion de un scripts .
hasta pronto..

Por waty90

0 de clabLevel



Genero:Masculino  

msie
Citar            
MensajeEscrito el 16 Abr 2007 01:40 pm
Waty90: La idea del foro es que postees las soluciones, dudas así todos nos nutrimos de ellas. O sea, exactamente al revez de lo que vos estás haciendo.

si tenes la amabilidad, postea las direcciones o los scripts en este hilo.

Por el_itur

142 de clabLevel



Genero:Masculino  

Argentina

firefox
Citar            
MensajeEscrito el 17 Abr 2007 02:42 pm
Hola wizardxyz, aqui te coloco una solucion sencilla:
Primero crea un archivo (PHP en mi caso) llamado turing.php y coloca este codigo:

Código :

<?php
   function randomPrefix($length) { 
      $random = ""; 
      srand((double)microtime()*1000000); 

      $data = "AbcDE123IJKLMN67QRSTUVWXYZ"; 
      $data .= "aBCdefghijklmn123pq45rs67tuv89wxyz"; 
      $data .= "FGH45P89"; 

      for($i = 0; $i < $length; $i++) { 
         $random .= substr($data, (rand()%(strlen($data))), 1); 
      } 

      return $random; 
   } 
   
   $code = strtolower(randomPrefix(6));

   // Iniciar la variable de sesión para guardar el código del turing en sesión
   session_start();

   // Guardar el código turing en la sesión 
   $_SESSION['turing'] = $code;

   // Ancho de la imagen
   $largeur = 128;

   // Alto de la imagen
   $hauteur = 20;
   
        // Crear una imagen con la libreria GD de PHP
   $img = imagecreate($largeur, $hauteur) or die("No existe soporte de imagenes");

   // Color de fondo de la imagen del turing
   $bgc = imagecolorallocate($img, 255, 255, 255);

        // Colores a utilizar en la imagen
   $black = imagecolorallocate($img, 0, 0, 0);
   $gris = imagecolorallocate($img, 47, 56, 111);
 
        // Pintar una imagen rectangular con PHP
   imagefilledrectangle($img, 0, 0, $largeur, $hauteur, $bgc);

   $hor_pos = 17; 
   
   // For para agregar los caracteres del código en la imagen
   for($i = 0;$i < strlen($code);$i++){
      imagestring($img, 9, $hor_pos, rand(0,4), $code[$i], $black);
      $hor_pos+=rand(15,20);
   }

   // for para colocar los puntos en la imagen (Descomentar para probar)
   /*for($i = 0;$i < 30;$i++){ // Valor anterior de la variable de control 60
       imagesetpixel($img, rand(0,$largeur), rand(0,$hauteur), $gris);
   }*/

   for($i = 0;$i < 5;$i++){
       if($i<2){
         $x1 = rand(0,$largeur);
         $y1 = 0;
         $x2 = abs($x1-rand(0,5));
         $y2 = $hauteur;
      }
      else {
         $x1 = 0;
         $y1 = rand(0,$hauteur);
         $x2 = $largeur;
         $y2 = abs($y1-rand(0,5));
      }
      // Dibuja lineas en la imagen
               //imageline($img, $x1, $y1, $x2, $y2, $gris);
   }

   imagejpeg($img,"",25);
   imagedestroy($img);

?>


Luego crea un archivo PHP con el siguiente contenido (en mi caso lo llame form.php):

Código :

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Untitled Document</title>
</head>

<body>
<form action="login2.php" method="post" name="form" id="form">
   Verificaci&oacute;n: <input name="codigo" type="text" id="codigo"><br />
   <img src="turing.php" alt="Imagen de seguridad" width="128" height="20" border="0"><br />
    <input name="Submit" type="submit" value="Entrar">
</form>
</body>
</html>


Por ultimo crea el archivo que recibe los valores del formulario y valida que codigo introducido en el formulario coincide con el turing en sesion:

Código :

<?php session_start(); ?>
<?php
   // If para saber si el usuario ingreso el codigo de seguridad correctamente
   if($_POST['codigo'] != $_SESSION['turing']){
      $_SESSION['turing'] = '';
      session_destroy();
      header("Location: form.php");
   }
   else{
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Untitled Document</title>
</head>

<body>
<?php echo 'Codigo Valido'; ?>
</body>
</html>
<?php } ?>


Explicación:
El primer archivo turing.php es el que pinta la imagen en el formulario y guarda en la sesión el codigo generado en la randomPrefix.

El parámetro que recibe la función randomPrefix es para indicar el numero de caracteres a generar.

La variable $data contiene los caracteres con el cual se va a generar el código.

la variable de sesión $_SESSION['turing'] contiene el código generado para ser luego comparado al momento de enviar el formulario

El archivo form.php tiene un formulario común y corriente lo unico es que hay un atributo img que llama al archivo turing.php para pintar el código.

Y por ultimo el ultimo archivo login2.php valida que el código sea valido.

Espero que te sea ayuda, cualquier problema con el código o duda no vaciles en preguntar saludos :wink:

Por psycho-vnz

Claber

1186 de clabLevel

7 tutoriales

Genero:Masculino  

firefox
Citar            
MensajeEscrito el 23 Sep 2010 07:40 pm
Hola tengo un archivo en el cual quiero insertar la verificación por imagen para que los usuario no se creen cuentas aleatorias con script malignos, lo que es muy frecuente en servidores de juego. por favor me podrían dar algúna solución simple?. ya que no entiendo mucho php muchas gracias.

Por CLAnonimo

Claber

600 de clabLevel

5 tutoriales
1 articulo

 

Este es un usuario anónimo genérico para las cuentas borradas o perdidas.

firefox
Citar            
MensajeEscrito el 23 Sep 2010 11:15 pm
The new version is called Securimage, you can get it here: Securimage CAPTCHA - Free PHP Captcha Script

Put it somewhere on your system, for actually using it is fairly straight forward:

Somewhere on your page load it:
PHP Code:
include_once $_SERVER['DOCUMENT_ROOT'] . '/securimage/securimage.php';

$securimage = new Securimage();
Show it where you need it:
PHP Code:
<img id="captcha" src="/securimage/securimage_show.php" alt="CAPTCHA Image" />
<input type="text" name="captcha_code" size="10" maxlength="6" />
<a href="#" onclick="document.getElementById('captcha').src = '/securimage/securimage_show.php?' + Math.random(); return false">Reload Image</a>
Form validation to check if they typed the correct code:
PHP Code:
if ($securimage->check($_POST['captcha_code']) == false) {
// the code was incorrect
// handle the error accordingly with your other error checking

// or you can do something really basic like this
die('The code you entered was incorrect. Go back and try again.');
}
Adjust the location of the script if you put it somewhere else than document_root/securimage

Por CLAnonimo

Claber

600 de clabLevel

5 tutoriales
1 articulo

 

Este es un usuario anónimo genérico para las cuentas borradas o perdidas.

firefox
Citar            
MensajeEscrito el 30 Dic 2012 05:50 am
Hola amigos alguien me puede ayudar yo hice un código captcha con el dreamweaver 8 y me sale la imagen en mi web pero no funciona pongo el código que me muestra la imagen y envía el comentario y si pongo el código mal también lo envía no se qué hacer mi website es www.spokanecleaningexpress.com por sí quieren checar gracias espero que me ayuden

Por Jose19386

1 de clabLevel



 

safari

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.