Importamos el archivo que contiene la clase ClaveAleatoria
require('rutinas.php');
Creamos una imagen con un determinado ancho y alto:
$ancho=100;
$alto=22;
$imagen=imageCreate($ancho,$alto);
Creamos un recurso con el color azul y pintamos el fondo de la imagen:
$azul=ImageColorAllocate($imagen,195,217,255);
ImageFill($imagen,0,0,$azul);
Creamos un objeto de la clase ClaveAleatoria, fijamos la cantidad de caracteres de la misma y
almacenamos el resultado en una variable local:
$clave=new ClaveAleatoria();
$clave->fijarLongitud(6);
$valoraleatorio=$clave->generar();
Inicializamos la sesión para almacenar en el servidor el código generado y posteriormente poderlo
contrastar con el que cargue el visitante en el formulario:
session_start();
$_SESSION['captcha']=$valoraleatorio;
Creamos otros dos colores:
$rojo=ImageColorAllocate($imagen,255,0,0);
$negro=ImageColorAllocate($imagen,0,0,0);
Graficamos algunas líneas negras sobre la imagen:
for($c=0;$c<=3;$c++)
{
$x1=rand(0,$ancho);
$y1=rand(0,$alto);
$x2=rand(0,$ancho);
$y2=rand(0,$alto);
ImageLine($imagen,$x1,$y1,$x2,$y2,$negro);
}
Dibujamos el código generado:
ImageString($imagen,5,25,5,$valoraleatorio,$rojo);
Generamos la cabecera a enviar al navegador indicando que enviaremos una imagen con formato png:
Header ("Content-type: image/png");
Volcamos la imagen previamente generada:
ImagePNG ($imagen);
Liberamos recursos del servidor:
ImageDestroy($imagen);