Vamos a ver como crear un captcha desde php. Un captcha es una palabra aleatoria mostrada como imagen que se utiliza para evitar que los robots accedan a determinadas web. Este tipo de código de verificación es utilizada para evitar el spam en los formularios de las páginas web.
A continuación una función en php para generar un captcha, con un parámetro que le pasaremos el número de caracteres que formaran la nueva imagen.
function captcha($numcaracteres = 6){ $caracteres = '23456789bcdfghjkmnpqrstvwxyz'; $codigo = ''; $i = 0; while ($i < $numcaracteres) { $codigo .= substr($caracteres, mt_rand(0, strlen($caracteres)-1), 1); $i++; } // Iniciamos sesión $_SESSION["captcha"] = $codigo; // Medidas $ancho = 100; $alto = 25; // Creamos nueva imagen $imagen = ImageCreate($ancho, $alto); // Definimos 3 Colores $color1 = ImageColorAllocate($imagen, 255, 255, 255); // blanco $color2 = ImageColorAllocate($imagen, 0, 0, 0); // negro $color3 = ImageColorAllocate($imagen, 255, 0, 0); //rojo // Color background ImageFill($imagen, 0, 0, $color2); // Color texto ImageString($imagen, 5, 30, 3, $codigo, $color1); // Líneas diagonales imageline($imagen, 0, 5, $ancho, 5, $color3); imageline($imagen, $ancho/4, 0, $ancho/2, $alto, $color3); imageline($imagen, 0, 18, $ancho, 18, $color3); imageline($imagen, 46, 0, 86, $alto, $color3); header("Content-Type: image/jpeg"); // Generamos la nueva imágen jpg ImageJpeg($imagen); // Liberamos recursos ImageDestroy($imagen); } // Modo de uso captcha();
Agradezco tu comentario 🤘