Foros del Web » Programando para Internet » PHP »

Generador de imagenes aleatorias PHP

Estas en el tema de Generador de imagenes aleatorias PHP en el foro de PHP en Foros del Web. ...

  #1 (permalink)  
Antiguo 22/06/2007, 12:22
Avatar de ivor  
Fecha de Ingreso: abril-2005
Ubicación: Venezuela
Mensajes: 673
Antigüedad: 19 años
Puntos: 2
Generador de imagenes aleatorias PHP

__________________
Twitter: ipad

Última edición por ivor; 02/07/2007 a las 20:02 Razón: informacion confidencial
  #2 (permalink)  
Antiguo 22/06/2007, 14:10
 
Fecha de Ingreso: febrero-2003
Ubicación: Santiago
Mensajes: 220
Antigüedad: 21 años, 2 meses
Puntos: 4
Re: Generador de imagenes aleatorias PHP

Eso va a depender si las fotos estan en una base de datos o quieres leer un directorio.

Por ejemplo:

en este caso, asumiremos que las imagenes son del tipo:

1.jpg
2.jpg
3.jpg...
hasta un n.jpg

Código PHP:
$total "11"// Numero total de imagenes
$carpeta "/imagenes";

$random mt_rand(1$total);
$imagen $random ".jpg";

echo 
"<img src="$carpeta/$imagen" border="0">"
Si las tienes en un directorio pero esta vez con distintos nombres utilizas el opendir(); readdir(): y manera que "filtras" los archivos que sean de imagen en un arreglo, despues le puedes dar el "random" que use arriba con mt_rand y asi cargas el "indice" del arreglo generado

Saludos.
__________________
Roberto Osses Elgueta
Senior Web Developer
  #3 (permalink)  
Antiguo 22/06/2007, 15:19
Avatar de ivor  
Fecha de Ingreso: abril-2005
Ubicación: Venezuela
Mensajes: 673
Antigüedad: 19 años
Puntos: 2
Re: Generador de imagenes aleatorias PHP

Gracias por responder tan rápido. el PHP no es mi fuerte y estoy dandome duro con eso, pero fijate que no solo son las images en random, disculpa q no explique esto, si ven este link http://www.asiesparaguana.com/top-im...na-ForosdelWeb ven que con solo poner el texto la imagen cambia con el texto que uno ponga. eso es lo que quiero llegar a hacer.

http://www.asiesparaguana.com/top-im...na-ForosdelWeb intentenlo xD

que interesante es el php jeje cada día me sorprende mas
__________________
Twitter: ipad

Última edición por ivor; 22/06/2007 a las 15:37
  #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.
  #5 (permalink)  
Antiguo 22/06/2007, 15:51
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Re: Generador de imagenes aleatorias PHP

Esta muy bien tu codigo, pero evita poner imagenes tan grandes en el foro, mekor deja el link y asi lo pueden ver en funcionamiento.

Saludos.
  #6 (permalink)  
Antiguo 22/06/2007, 16:02
Avatar de ivor  
Fecha de Ingreso: abril-2005
Ubicación: Venezuela
Mensajes: 673
Antigüedad: 19 años
Puntos: 2
Mensaje Re: Generador de imagenes aleatorias PHP

Cita:
Iniciado por okram Ver Mensaje
Diseñe este codigo haceun buen tiempo, haber si te sirve (Por falta de tiempo, no te lo puedo explicar ahora)
Ojala me lo puedas explicar a lo que tengas tiempo, pues se ve umuy interesante el codigo pero para mi esta medio complicado.

pero gracias por las respuestas
gracias
__________________
Twitter: ipad
  #7 (permalink)  
Antiguo 22/06/2007, 17:42
okram
Invitado
 
Mensajes: n/a
Puntos:
Re: Generador de imagenes aleatorias PHP

Cita:
Iniciado por GatorV Ver Mensaje
[...]evita poner imagenes tan grandes en el foro[...]
Tienes razon GatorV, es un detalle que pase por alto. Lo que pasa es que el script saca las imagenes de una carpeta, y los tamaños de esas imagenes son muy variados. Cuando puse el mensaje, se mostró una imagen pequeña. Gracias por editar el mensaje

ivor, te explicare a grandes razgos el codigo por partes, ya que no esta muy dificil de entender:

Código PHP:
//Indicamos el folder donde tenemos almacenadas las imagenes
$folder '.';
 
//Creamos un array con las extensiones comunes de una imagen
$extList = array();
$extList['gif'] = 'image/gif';
$extList['jpg'] = 'image/jpeg';
$extList['jpeg'] = 'image/jpeg';
$extList['png'] = 'image/png';
 
//La variable $img sera la que contenga la ruta de la imagen
$img null
$img tiene un valor de null debido a que posteriormente se comprobara este valor. Si no ha cambiado, quiere decir que la imagen no ha podido ser cargada. Hasta aqui, aun no se ha hecho nada

Código PHP:
if (substr($folder,-1) != '/') {
    
$folder $folder.'/';

Esto es solo para ponerle una barra "/" al folder si no ha sido colocada.

Código PHP:
if (isset($_GET['img'])) {
    
//La función pathinfo devuelve información sobre la ruta de 
    //un archivo (PHP.net)
    
$imageInfo pathinfo($_GET['img']);
 
    
//En este if comprobamos si el archivo corresponde a 
    //un tipo de imagen válido, y si la imagen existe.
    //Esto lo hacemos verificando si la extension del archivo
    //se encuentra en el array creado al inicio. Si es una
    //imagen y existe, entonces esa será la imagen mostrada,
    //y le asignamos a $img la ruta de esa imagen como valor.
    
if (
        isset(
$extList[strtolower($imageInfo['extension'])]) &&
        
file_exists($folder.$imageInfo['basename'])
    ) {
        
$img $folder.$imageInfo['basename'];
    }

El codigo lo diseñe para que tambien se pudiera pasar el nombre de la imagen que se desea abrir por la url ($_GET['img']).
dsd

Código PHP:
//Si no se paso una imagen por la url, tendremos que escoger un archivo
//aleatoriamente dentro de nuestra carpeta ($folder)
else {
 
    
//Este array guardara los nombres de las imagenes que 
    //hay en la carpeta
    
$fileList = array();
 
    
//La funcion opendir sirve para Abrir un gestor de 
    //directorio, en este caso, el folder donde tenemos 
    //la imagenes (PHP.net)
    
$handle opendir($folder);
 
    
//Una vez abierto el gestor, la funcion readdir se encarga
    //de Leer una entrada desde un gestor de directorio (PHP.net).
    //Esto significa que obtendremos los nombres de los 
    //archivos que hay en el directorio como si se estuviera
    //hablando del resultado de una consulta SQL
    
while ( false !== ( $file readdir($handle) ) ) {
        
//Obtenemos la informacion del archivo
        
$file_info pathinfo($file);
        
//Verificamos si es una imagen
        
if (
            isset( 
$extListstrtolower$file_info['extension'] ) ] )
        ) {
            
//Si es una imagen, guardamos el nombre de archivo
            //en el array creado para ello
            
$fileList[] = $file;
        }
    }
    
//closedir para Cerrar un gestor de directorio (PHP.net)
    
closedir($handle);
 
    
//Vemos entonces cuantas imagenes hay en el folder,
    //contando para ello los datos que hay en el array
    //$fileList
    
$ntotal count($fileList);
    if (
$ntotal 0) {
        
//Con la funcion rand() escogemos una imagen al azar
        
$imageNumber rand(0,$ntotal-1);
        
$img $folder.$fileList[$imageNumber];
    }

Hasta aqui ya tenemos la imagen que vamos a mostrar.

Código PHP:
//Si la imagen existe (variable $img), mostramos.
if ($img!=null) {
    
$imageInfo pathinfo($img);
    
$contentType 'Content-type: '.$extList$imageInfo['extension'] ];
    
header ($contentType);
    
readfile($img);
} else {
    
//Si no existe, mostramos error, creando para ello una
    //imagen con un texto que muestra error:
    
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);
    }

Si no existe la imagen, se muestra algo asi: http://myokram.coolinc.info/imagen.j...?img=texto.jpg


Espero haber sido claro, eso es todo

Un saludo,
  #8 (permalink)  
Antiguo 06/07/2007, 12:27
 
Fecha de Ingreso: abril-2007
Mensajes: 3
Antigüedad: 17 años
Puntos: 0
Re: Generador de imagenes aleatorias PHP

Hola, mira.. Yo estoy buscando hacer algo parecido.. Solo que lo mio a parte de llevar una imagen.. Lleva una expliacion y un boton.. O sea.. www.lastintorerias.com en el margen izquierdo dice "RECOMENDADAS".. Y cada imagen corresponde a un local con una minima explicacion y su link para ir a la informacion de su local..

Como tengo que hacer para que sea aleatorio.. Ya que ahora tengo mas clientes que lugar y nesecito meter mas imagenes entonces se me ocurrio haciendolo random.. Que cada ves que entren al sitio aparescan los locales en diferentes posiciones que algunos no aparescan y algunos si... Aleatorias para ser mas concreto =P..

Bueno espero una respuesta ya que tengo que hacerlo urgente y no encuentro nada del tema.. Si alguien quere le puedo pasar el .php del sitio para que vea como esta echo.. Ya que el sitio se carga por sectores.. El index abre ese margen por un lado el menu superior por otro lado y todo el texto del medio por otro lado para alivianar y acelerar el proceso de carga...

Por cierto.. La seccion de Recomendadas abre los locales desde una base de datos que esta dentro del mismo sitio, por la misma razon, acelerar el proceso de subir nuevos clientes, pongo el nombre la foto la direccion y wala!...

Desde ya muchas gracias a quienes me puedan ayudar..

Atte: Maximo Ariel Zero.
  #9 (permalink)  
Antiguo 06/07/2007, 23:18
 
Fecha de Ingreso: abril-2007
Mensajes: 3
Antigüedad: 17 años
Puntos: 0
Re: Generador de imagenes aleatorias PHP

Bueno, posteo para ver si alguien me da una manito, no me gustaria abrir un nuevo post para preguntar algo que ya esta y luego se quejen de que posten las cosas 2 veces =P...

Gracias...
  #10 (permalink)  
Antiguo 07/07/2007, 17:36
okram
Invitado
 
Mensajes: n/a
Puntos:
Re: Generador de imagenes aleatorias PHP

Bien, en esencia es lo mismo... Crea un array con la url, la imagen y la descripcion.. Luego haces un bucle... algo asi:
Código PHP:
$numero 5;
$sql "SELECT * FROM recomendadas ORDER BY rand() LIMIT $numero";
$sql mysql_query($sql);
while(
$result mysql_fetch_object($sql)) {
echo 
"<a href=\"".$result->url."\" title=\"".$result->descripcion."\">\n";
echo 
"<img src=\"archivo/del/script.php?img=".$result->image."\" />\n";
echo 
"</a>\n<br />\n";

Si tienes algun problema postea...

Un saludo,
  #11 (permalink)  
Antiguo 09/07/2007, 11:09
Avatar de 3433  
Fecha de Ingreso: julio-2007
Mensajes: 7
Antigüedad: 16 años, 9 meses
Puntos: 0
Re: Generador de imagenes aleatorias PHP

saludos soy nuevo por aca y quisiera poner una consulta, copie el codigo y logre hacerlo funcionar pero no puedo evitar notar que en tu enlace a la imagen aparece como imagen.jpg mientras que la mia aparece como firma.php quisiera saber como haces para que el enlace quede como una imagen ya que me gustaria usar este sistema en lugares donde no me permiten poner php aca dejo mi resultado:

http://usuarios.lycos.es/e3433e/firmin.php

saludos y gracias por el codigo :D
  #12 (permalink)  
Antiguo 09/07/2007, 12:15
Avatar de rogertm
Mod->Cuba
 
Fecha de Ingreso: julio-2005
Ubicación: /home/Cuba/Habana/rogertm/
Mensajes: 2.922
Antigüedad: 18 años, 9 meses
Puntos: 638
Re: Generador de imagenes aleatorias PHP

hola, he estado mirando y lellendo este post y que bueno, he encontrado algo que he estado cocinando hace rato, como hacer para subir imagenes a un directorio y que se mostraran aleatoriamente sin tener que modificar el script ni tener una tabla en la base de datos para ello, y este codigo que nos muestra okram esta muy bueno, pero que tal si quiero poner un link en cada imagen, osea, que al mostrarse la imagen nos sirva de vinculo a otra pagina u otro lugar de nuestro sitio (publicidad)

bueno, saludos y suerte
__________________
Friki y Blogger por Cuenta Propia:213
Twenty'em: Theming is Prose
  #13 (permalink)  
Antiguo 09/07/2007, 13:08
Avatar de 3433  
Fecha de Ingreso: julio-2007
Mensajes: 7
Antigüedad: 16 años, 9 meses
Puntos: 0
Re: Generador de imagenes aleatorias PHP

pues respondo a mi misma pregunta, por fin lo logre creando un directorio llamado firma.jpg y metiendo adentro el archivo con el nombre de index.php

Salu2 y de nuevo gracias por el codigo
  #14 (permalink)  
Antiguo 09/07/2007, 15:56
okram
Invitado
 
Mensajes: n/a
Puntos:
Re: Generador de imagenes aleatorias PHP

Cita:
Iniciado por 3433 Ver Mensaje
[...]creando un directorio llamado firma.jpg y metiendo adentro el archivo con el nombre de index.php[...]
Efectivamente, asi es como lo hice... Suerte

Un saludo,
  #15 (permalink)  
Antiguo 09/07/2007, 16:09
okram
Invitado
 
Mensajes: n/a
Puntos:
Re: Generador de imagenes aleatorias PHP

Cita:
Iniciado por rogertm Ver Mensaje
[...]como hacer para subir imagenes a un directorio y que se mostraran aleatoriamente sin tener que modificar el script ni tener una tabla en la base de datos para ello[...]
Pues en http://myokram.coolinc.info es exactamente lo que hago... Haber entra a http://myokram.coolinc.info/?action=upload y veras que se abre un formulario (Protegido con su password, obviamente para subir las imagenes. El script toma las imagenes de un directorio, no de una base de datos ni de un archivo de texto... Puedes buscar en google, encontraras buenos tutoriales sobre como subir archivos con PHP, yo lo hago asi:

Código PHP:
 if (is_uploaded_file($_FILES['archivo']['tmp_name'])) {
  if(
$_FILES['archivo']['size'] < 750000) { 
    
copy($_FILES['archivo']['tmp_name'], $_FILES['archivo']['name']);
    
$subio true;
  }
 }
 
 if(
$subio) {
  echo 
"El archivo subio con exito";
 } else {
  echo 
"El archivo no cumple con las reglas establecidas"
 }
 die(); 
y el formulario:
Código HTML:
<form action="<?=$PHP_SELF?>?action=upload" method="post" enctype="multipart/form-data" name="form1">
  <p align="center">
   <input name="archivo" type="file" id="archivo"><br />(Solo formato GIF Y JPG menores a 750Kb)
  </p>
  <p align="center"><input name="boton" type="submit" id="boton" value="Enviar imagen"></p>
</form> 
Cita:
Iniciado por rogertm Ver Mensaje
[...]que tal si quiero poner un link en cada imagen, osea, que al mostrarse la imagen nos sirva de vinculo a otra pagina u otro lugar de nuestro sitio (publicidad)
Como el script toma la imagen de un directorio, y crea la imagen (No la inserta en el contenido HTML de la web [uso de <img />]), no se puede hacer lo que dices. En todo caso, tendrias que tener una base de datos o un archivo de texto en el que a cada imagen se le asigne un link externo... Podrias tambien hacerlo con un array... Mira 5 posts mas arriba, y tienes mi solucion...

Un saludo,
  #16 (permalink)  
Antiguo 09/07/2007, 16:13
okram
Invitado
 
Mensajes: n/a
Puntos:
Re: Generador de imagenes aleatorias PHP

Cita:
Iniciado por rogertm Ver Mensaje
[...]que tal si quiero poner un link en cada imagen, osea, que al mostrarse la imagen nos sirva de vinculo a otra pagina u otro lugar de nuestro sitio (publicidad)
Por otro lado, tienes buenos tutoriales sobre ROTACION DE BANNERS EN PHP en el google... lo unico que cambiarias es que en vez de mostrar la imagen directamente, la muestras a traves del script:
script.php?imagen=http://www/imagen.jpg

Un saludo,
  #17 (permalink)  
Antiguo 10/07/2007, 07:01
Avatar de rogertm
Mod->Cuba
 
Fecha de Ingreso: julio-2005
Ubicación: /home/Cuba/Habana/rogertm/
Mensajes: 2.922
Antigüedad: 18 años, 9 meses
Puntos: 638
Re: Generador de imagenes aleatorias PHP

hola, bueno, me di cuenta de que no se puede poner las imagenes con vinculos, y tambien me di cuenta que tengo que morir con la base de datos, que lo he hecho antes, lo que yo queria era trabajar menos, o mas bien, no trabajar, jajaaa , pero bueno, el script esta muy bueno y para algo me servira en algun momento, lo prove y funciono al palo, ahora tengo que estudiarle bien, a ver como funciona todo, en cuanto al upload, tambien me sirve.

gracias, saludos y suerte
__________________
Friki y Blogger por Cuenta Propia:213
Twenty'em: Theming is Prose
  #18 (permalink)  
Antiguo 12/07/2007, 07:01
Avatar de rogertm
Mod->Cuba
 
Fecha de Ingreso: julio-2005
Ubicación: /home/Cuba/Habana/rogertm/
Mensajes: 2.922
Antigüedad: 18 años, 9 meses
Puntos: 638
Re: Generador de imagenes aleatorias PHP

hola otra vez, okram, y no se puede modificar el script para que lea archivos flash (*.swf)? prove ponerle $extList['swf'] = 'image/swf'; pero no se si se puede, o hay que hacerlo de otra manera, o este script solo sirve para imagenes, por que asi lo que hace es que me muestra la ventana de descarga para bajarme el script, bueno, no se mas, esto lo acabo de probar y no he mirado el script mas detenidamente a ver si hay que hacer alguna modificacion (tampoco soy un experto) por eso preguntooOo

OK, saludos y suerte
__________________
Friki y Blogger por Cuenta Propia:213
Twenty'em: Theming is Prose
  #19 (permalink)  
Antiguo 12/07/2007, 08:51
okram
Invitado
 
Mensajes: n/a
Puntos:
Re: Generador de imagenes aleatorias PHP

El script usa la libreria GD que sirve para generar imagenes on the fly... NO se si se pueda generar archivos flash con php... Averiguare un poco mas sobre el tema

Un saludo,
  #20 (permalink)  
Antiguo 13/07/2007, 14:49
Avatar de rogertm
Mod->Cuba
 
Fecha de Ingreso: julio-2005
Ubicación: /home/Cuba/Habana/rogertm/
Mensajes: 2.922
Antigüedad: 18 años, 9 meses
Puntos: 638
Re: Generador de imagenes aleatorias PHP

OK, gracias
__________________
Friki y Blogger por Cuenta Propia:213
Twenty'em: Theming is Prose
  #21 (permalink)  
Antiguo 18/12/2007, 16:31
 
Fecha de Ingreso: mayo-2005
Ubicación: Murcia
Mensajes: 319
Antigüedad: 19 años
Puntos: 0
Re: Generador de imagenes aleatorias PHP

me sale un disparate de error....

¿A que se debe o porque sale?¿que solucion puedo tomar?

Código PHP:
WarningCannot modify header information headers already sent by (output started at /usr/home/web/web/index.php:4in /usr/home/web/web/menu.php on line 87
ÿØÿàJFIFddÿì
-DuckyD ÿâ XICC_PROFILE HLinomntrRGB XYZ Î 1acspMSFTIEC sRGBöÖÓ-HP cprtP3desc„lwtptðbkptrXYZgXYZ,bXYZ@dmndTpdmddĈvuedL†viewÔ$lumiømeas $tech0 rTRCgTRCbTRCtextCopyright (c1998 Hewlett-Packard CompanydescsRGB IEC61966-2.1sRGB IEC61966-2.1XYZ óQÌXYZ XYZ o¢8õXYZ b™·…ÚXYZ „¶ÏdescIEC http://www.iec.chIEC http://www.iec.chdesc.IEC 61966-2.1 Default RGB colour space - sRGB.IEC 61966-2.1 Default RGB colour space - sRGBdesc,Reference Viewing Condition in IEC61966-2.1,Reference Viewing Condition in IEC61966-2.1view¤þ_.ÏíÌ \žXYZ L VPWçmeassig CRT curv #(-27;@EJOTY^chmrw|†‹•šŸ¤©®²·¼ÁÆËÐÕÛàåëðöû %+28>ELR 

Yo he copiado y puesto directamente el código en el archivo php
  #22 (permalink)  
Antiguo 18/12/2007, 17:06
okram
Invitado
 
Mensajes: n/a
Puntos:
Re: Generador de imagenes aleatorias PHP

Que codigo usas? Puedes poner tu codigo?

Un saludo,
  #23 (permalink)  
Antiguo 19/12/2007, 08:04
 
Fecha de Ingreso: mayo-2005
Ubicación: Murcia
Mensajes: 319
Antigüedad: 19 años
Puntos: 0
Re: Generador de imagenes aleatorias PHP

Este es el código que he puesto:

Código PHP:
<?php
 
 
$folder 
'panel/galeria';
$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);
    }
}
?>
  #24 (permalink)  
Antiguo 19/12/2007, 08:30
Avatar de rogertm
Mod->Cuba
 
Fecha de Ingreso: julio-2005
Ubicación: /home/Cuba/Habana/rogertm/
Mensajes: 2.922
Antigüedad: 18 años, 9 meses
Puntos: 638
Re: Generador de imagenes aleatorias PHP

Cita:
Iniciado por okram Ver Mensaje
El script usa la libreria GD que sirve para generar imagenes on the fly... (...)
no se, pero te fijaste que tengas instalada la libreria GD???

saludos y suerte
__________________
Friki y Blogger por Cuenta Propia:213
Twenty'em: Theming is Prose
  #25 (permalink)  
Antiguo 19/12/2007, 12:20
 
Fecha de Ingreso: mayo-2005
Ubicación: Murcia
Mensajes: 319
Antigüedad: 19 años
Puntos: 0
Re: Generador de imagenes aleatorias PHP

que quieres decir con la libreri GD???

Yo tengo un formulario que sube las imagenes a una carpeta determinada y despues quiero poner las imagenes aleatorias....

Como puedo hacer la libreria GD?
  #26 (permalink)  
Antiguo 19/12/2007, 12:36
Avatar de rogertm
Mod->Cuba
 
Fecha de Ingreso: julio-2005
Ubicación: /home/Cuba/Habana/rogertm/
Mensajes: 2.922
Antigüedad: 18 años, 9 meses
Puntos: 638
Re: Generador de imagenes aleatorias PHP

Cita:
Es una librería de código abierto (open source) para la creación de imagenes dinamicas, diseñada para programadores. GD fue desarrollada en lenguaje C, y está disponible para Perl, PHP y otros lenguajes de programación web. Esta librería puede crear imágenes png, JPEG y GIF, entre otros formatos.
Normalmente los servidores web bajo GNU/Linux ya poseen estas librerías instaladas.

Fue desarrollada originalmente por Thomas Boutell.
Enlace: http://www.libgd.org

Fuente: http://es.wikipedia.org/wiki/GD2
aqui un par de enlaces que te pueden interesar:
http://www.libgd.org/Main_Page
http://www.php.net/manual/es/ref.image.php

saludos y espero no enloquezcas con los links que te doy
__________________
Friki y Blogger por Cuenta Propia:213
Twenty'em: Theming is Prose
  #27 (permalink)  
Antiguo 19/12/2007, 12:41
Avatar de rogertm
Mod->Cuba
 
Fecha de Ingreso: julio-2005
Ubicación: /home/Cuba/Habana/rogertm/
Mensajes: 2.922
Antigüedad: 18 años, 9 meses
Puntos: 638
Re: Generador de imagenes aleatorias PHP

se me olvidaba, no se otros servidores, pero si usas el wamp tienes la opcion de activarlos desde las extenciones de php

saludos
__________________
Friki y Blogger por Cuenta Propia:213
Twenty'em: Theming is Prose
  #28 (permalink)  
Antiguo 19/12/2007, 12:53
 
Fecha de Ingreso: mayo-2005
Ubicación: Murcia
Mensajes: 319
Antigüedad: 19 años
Puntos: 0
Re: Generador de imagenes aleatorias PHP

a ver si lo entiendo (porque no tengo mucha idea de php ni programación)

yo puedo poner en la parte donde quiero poner la imagen aleatoria por ejemplo
Código PHP:
<img src="aleatoria.php?ruta=panel/noticias/" border="0" /> 
y despues en aleatoria.php poner lo siguiente:

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); 
    } 

?>
O sigo equivocandome?
  #29 (permalink)  
Antiguo 19/12/2007, 13:05
 
Fecha de Ingreso: mayo-2005
Ubicación: Murcia
Mensajes: 319
Antigüedad: 19 años
Puntos: 0
Re: Generador de imagenes aleatorias PHP

Correcto... ya me sale muchisimas gracias por vuestra ayuda.
  #30 (permalink)  
Antiguo 19/12/2007, 13:10
Avatar de rogertm
Mod->Cuba
 
Fecha de Ingreso: julio-2005
Ubicación: /home/Cuba/Habana/rogertm/
Mensajes: 2.922
Antigüedad: 18 años, 9 meses
Puntos: 638
Re: Generador de imagenes aleatorias PHP

mira, ya tienes el script con el codigo que expone okram, en la parte donde quieras que se muestren las imagenes aleatorias llamas al script mediante un include(), en el script lo que tienes que arreglar es la ruta de la carpeta donde guardas tus imagenes, y ya.
te digo mas, acabo de probar el script y va muy bien, lo que se hace, asi sin incluirlo en ninguna otra pagina ni nada, es simplemente poner la ruta del script en tu navegador, y al pulsar F5 las imagenes se van mostrando solas y aleatoriamente.

saludos y suerte
__________________
Friki y Blogger por Cuenta Propia:213
Twenty'em: Theming is Prose
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Tema Cerrado

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 09:25.