Ver Mensaje Individual
  #4 (permalink)  
Antiguo 22/06/2007, 15:40
okram
Invitado
 
Mensajes: n/a
Puntos:
Re: Generador de imagenes aleatorias PHP

Diseñe este codigo haceun buen tiempo, haber si te sirve (Por falta de tiempo, no te lo puedo explicar ahora)

Código PHP:
<?php
 
 
$folder 
'.';
$extList = array();
$extList['gif'] = 'image/gif';
$extList['jpg'] = 'image/jpeg';
$extList['jpeg'] = 'image/jpeg';
$extList['png'] = 'image/png';
 
$img null;
 
if (
substr($folder,-1) != '/') {
    
$folder $folder.'/';
}
 
if (isset(
$_GET['img'])) {
    
$imageInfo pathinfo($_GET['img']);
    if (
        isset( 
$extListstrtolower$imageInfo['extension'] ) ] ) &&
        
file_exists$folder.$imageInfo['basename'] )
    ) {
        
$img $folder.$imageInfo['basename'];
    }
} else {
    
$fileList = array();
    
$handle opendir($folder);
    while ( 
false !== ( $file readdir($handle) ) ) {
        
$file_info pathinfo($file);
        if (
            isset( 
$extListstrtolower$file_info['extension'] ) ] )
        ) {
            
$fileList[] = $file;
        }
    }
    
closedir($handle);
 
    
$ntotal count($fileList);
    if (
$ntotal 0) {
        
$imageNumber rand(0,$ntotal-1);
        
$img $folder.$fileList[$imageNumber];
    }
}
 
if (
$img!=null) {
    
$imageInfo pathinfo($img);
    
$contentType 'Content-type: '.$extList$imageInfo['extension'] ];
    
header ($contentType);
    
readfile($img);
} else {
    if ( 
function_exists('imagecreate') ) {
        
header ("Content-type: image/png");
        
$im = @imagecreate (300100)
            or die (
"HUBO UN ERROR AL PROCESAR LA IMAGEN .:. MYOKRAM");
        
$background_color imagecolorallocate ($im255255255);
        
$text_color imagecolorallocate ($im0,0,0);
        
imagestring ($im255,  "HUBO UN ERROR AL PROCESAR LA IMAGEN .:. MYOKRAM"$text_color);
        
imagepng ($im);
        
imagedestroy($im);
    }
}
?>
Funcionando en http://myokram.coolinc.info/imagen.jpg

Un saludo,

Última edición por GatorV; 22/06/2007 a las 15:51 Razón: Quitado imagen ocupaba mucho espacio.