Cargador de imagenes en Flash+PHP

Tema en 'Cementerio De Temas' iniciado por Mandr4k3, 3 Abr 2008.

  1. Mandr4k3

    Mandr4k3 Usuario Casual nvl. 2
    17/41

    Registrado:
    8 Jun 2006
    Mensajes:
    2.836
    Me Gusta recibidos:
    8
    Vamos a realizar un cargador de imagenes en flash que se pueda editar solo cambiando las imagenes de la carpeta sin tener la necesidad de modificar el archivo *.fla

    Primero

    Vamos a crear una carpeta en nuestro sitio donde alojaremos las imagenes para ser cargadas en el flash la cúal llamaremos para este ejemplo "imagenes", dentro de esa carpeta crearemos un archivo PHP, al cual llamaremos "llama_galeria.php" y dentro de ese archivo colocamos el siguiente código

    Código PHP
    Insertar CODE, HTML o PHP:
    <?php
    //Aquí hago el llamado para las imagenes
    // Rodrigo XIV&#8482;, [email protected]
    =array(".","..","lista.php", "borrar.php", "Thumbs.db");
    =opendir(".");
    echo "<?xml version='1.0' encoding='iso-8859-1'?".">";
    echo "<files>";
    while (false!==(=readdir())){
        if ((!in_array(,))&&(is_readable())){
            echo "<file name='".utf8_encode()."' tamanio='".filesize()."' />";
        }
    }
    closedir();
    echo "</files>";
    ?>
    
    SEGUNDO

    Volvemos a la raíz del sitio y dejamos nuestro archivo *.swf en la raíz, este archivo va a contener el siguiente código en Action Script 2.0

    Código ActionScript 2.0
    Insertar CODE, HTML o PHP:
    
    stop();
    // Aquí va el llamado a la galeria en PHP
    // Rodrigo XIV&#8482;, [email protected]
    System.useCodepage = true;
    //la carpeta que tiene nuestras fotos, con un nombre medio cambiado por si ya tenemos otra
    //carpeta llamada imagenes
    var fotos:String = "imagenes/";
    //velocidad del efecto entre fotos
    var fade:Number = 20;
    //primera foto a cargar
    var iniciarFoto:Number = 0;
    //tiempo que se va a mostrar
    var tiempo:Number = 100;
    //contador fade
    var controlFade:Number = 0;
    //contador de tiempo
    var controlTiempo:Number = 0;
    //creamos un objeto xml porque en definitiva el php nos devolvera un xml
    miXML = new XML();
    miXML.ignoreWhite = true;
    miXML.onLoad = function(ok) {
    if (ok) {
    misFotos_array = this.firstChild.childNodes;
    _root.createEmptyMovieClip("contenedor1_mc", 10);
    _root.createEmptyMovieClip("contenedor2_mc", 20);
    contenedor1_mc.loadMovie(fotos+misFotos_array[iniciarFoto].attributes.name);
    iniciarFoto++;
    contenedor2_mc.loadMovie(fotos+misFotos_array[iniciarFoto].attributes.name);
    contenedor2_mc._alpha = 0;
    curr_mc = 1;
    onEnterFrame = function () {
    if (curr_mc == 1) {
    controlTiempo++;
    if (controlTiempo>=tiempo) {
    curr_mc = 2;
    cambio = "IN";
    }
    }
    if (curr_mc == 2) {
    if (cambio == "IN") {
    contenedor2_mc._alpha += 100/fade;
    if (contenedor2_mc._alpha>=100) {
    contenedor2_mc._alpha = 100;
    cambio = "FIJO";
    controlTiempo = 0;
    iniciarFoto++;
    if (iniciarFoto == misFotos_array.length) {
    iniciarFoto = 0;
    }
    contenedor1_mc.loadMovie(fotos+misFotos_array[iniciarFoto].attributes.name);
    }
    }
    if (cambio == "FIJO") {
    controlTiempo++;
    if (controlTiempo>=tiempo) {
    cambio = "OUT";
    }
    }
    if (cambio == "OUT") {
    contenedor2_mc._alpha -= 100/fade;
    if (contenedor2_mc._alpha<=0) {
    contenedor2_mc._alpha = 0;
    curr_mc = 1;
    controlTiempo = 0;
    iniciarFoto++;
    if (iniciarFoto == misFotos_array.length) {
    iniciarFoto = 0;
    }
    contenedor2_mc.loadMovie(fotos+misFotos_array[iniciarFoto].attributes.name);
    }
    }
    }
    };
    }
    };
    //la url de nuestro PHP que crea un xml
    miXML.load(fotos+'llama_galeria.php');
    //
    
    EXPLICACION

    En la carpeta "imagenes" estarán todos los archivos de imagen que queramos, en orden númerico o con cualquier nombre y el archivo "llama_galeria.php" y en la raíz del sitio estará nuestro archivo *.swf que estará en la pagína index.php.

    Esto sirve para servidores apache.

    Este ejemplo esta constuído en Flash 8 professional y publicado en flashplayer 8, por lo que no va a funcionar correctamente en versiones anteriores o que no soporten ActionScript 2.0

    Más cosas en www.acdyp.cl

    Saludos a todos....
     
  2. TheSentinel

    TheSentinel Usuario Casual nvl. 2
    37/41

    Registrado:
    23 Jul 2007
    Mensajes:
    2.266
    Me Gusta recibidos:
    8
    gracias Por El Aporte Compadre Se Agradece
     
  3. biciextrema

    biciextrema Usuario Nuevo nvl. 1
    6/41

    Registrado:
    28 May 2008
    Mensajes:
    68
    Me Gusta recibidos:
    0
    Voy a probar , gracias
     
  4. polaconegro

    polaconegro Usuario Nuevo nvl. 1
    17/41

    Registrado:
    22 Oct 2007
    Mensajes:
    199
    Me Gusta recibidos:
    4
    postea los archivos fuente...