![Antiguo](http://static.forosdelweb.com/fdwtheme/images/statusicon/post_old.gif)
05/07/2008, 11:12
|
| | Fecha de Ingreso: noviembre-2007
Mensajes: 382
Antigüedad: 17 años, 2 meses Puntos: 16 | |
Respuesta: antirobots de las FAQs error vale, el primer error lo solucione
pero lo del header me sigue saliendo y es que no tengo ni idea
Código:
function genera_password($longitud,$tipo="alfanumerico"){
$exp_reg="[^A-Z0-9]";
return substr(eregi_replace($exp_reg, "", md5(time())) .
eregi_replace($exp_reg, "", md5(time())) .
eregi_replace($exp_reg, "", md5(time())),
0, $longitud);
}
?>
<?php //recogemos el texto por el URL que enviamos a generar desde el link de imagen del HTML de nuestro formulario
//nombres tipografías a usar (sin extensión .ttf)
$tipografias = array("mashysho","angelica");
//directorio donde estén las fuentes (ruta absoluta) importante el último /
//$tipografias_ruta = "C:\WINDOWS\Fonts\\";
$tipografias_ruta="/home/cletubi/public_html/trabajo/validadores/fuentes/";
//inicializa eje X desde donde se empezará a dibujar el código (referente al tamaño de la caja)
$espacio = 0;
//tamaño fuente.
$tamano_fuente = 14;
//profundidad caracteres/digitos del código a generar (password).
$profundidad_codigo = 6; // (alfanuméricos)
//cálculo Ancho automático de la caja
$x=150;
$y=40;
$angmax = 20;
$hori = 50;
$verti = 100;
// Iniciar la generación de la imagen. Se define una caja de $x por $y pixels.
$im = imagecreate($x, $y);
//definición Colores. Expresados en valores R G B (respectivamente).
$color_fondo = imagecolorallocate($im, 255, 255, 255); // Blanco
$color_texto = imagecolorallocate($im, 0, 0, 0); // Negro
for($caracter=0; $caracter<$profundidad_codigo; $caracter++){
$rhori = rand(-$hori, $hori);
$rverti = rand(-$verti, $verti);
// intento de lineas
$lineColor = imagecolorallocate($im, 0, 0, 0);
$lineColor2 = imagecolorallocate($im, 0, 0, 0);
imagefill($im, 0, 0, $color_fondo);
//imageline( imagen, separacion izq, separacion superior, largo, inclinacion)
//linias horizontales
imageline($im, 0, $rhori, 200, $rhori, $lineColor);
imageline($im, 0, $rhori+20, 200, $rhori+20, $lineColor);
// linias verticales,
imageline($im, $rverti, 0, 25, 700, $lineColor);
imageline($im, $rverti+20, 0, 25, 700, $lineColor);
}
for($caracter=0; $caracter<$profundidad_codigo; $caracter++){
//seleccion de una tipografía aleatoria.
$indice_aleatorio=array_rand($tipografias);
$tipografia=$tipografias_ruta.$tipografias[$indice_aleatorio].'.ttf';
//separación entre caracteres
$espacio +=$tamano_fuente;
$ang = rand(-$angmax, $angmax);
//generar el caracter gráfico.
//imagettftext($im, $tamano_fuente, 0, $espacio, $tamano_fuente, $color_texto, $tipografia , $codigo{$caracter});
imagefttext($im, $tamano_fuente, $ang, $espacio, 30, $color_texto, $tipografia, $codigo{$caracter});
}
//cabecera HTTP la cual indica al navegador que la imagen que estamos generando es .PNG
header('Content-type: image/png');
//genera un png dinámico
imagepng($im);
//destruye la imagen del servidor
imagedestroy($im);
?>
Aqui esta el codigo por si sirve de algo |