Visualizzazione risultati 1 fino 4 di 4

Discussione: PHP, esempio creazione galleria personalizzabile

  1. #1
    Guest

    Predefinito PHP, esempio creazione galleria personalizzabile

    Posto un esempio perfettamente funzionante già così com'è ma che si può personalizzare scaricando la libreria fancybox per jquery, il codice è stato adattato ma nel mio progetto è fatto con la classe template, quindi html separato dal php(che è sempre buona cosa) ed infatti le classi dell'html sono già impostate per la libreria jquery.Non potendo mettere anche la classe template ho messo l'html dentro il php.
    Un semplice esempio di come creare una upload di un'immagine(fino a 1-2mega per immagine non ci sono problemi di caricamento)in jpeg e fare una galleria, si può caricare qualsiasi file al massimo c'è da impostare i thumbs, se provate a scaricare la libreria fancybox e create i template in html(fuori dal php) e dall'html includete la libreria fancybox vedrete anche l'effetto della galleria ;)
    Spero sia interessante.
    Ciao a tutti buon week-end


    Codice PHP:

    <?php
    //template di base
    echo "<fieldset class='weblog'>";
    echo
    '<legend style="color:blue">Immagini</legend>';

    echo
    "<form method='post' action='galleria.php' enctype='multipart/form-data'>";
    echo
    "<input type='hidden' name='action' value='upload'/>";
    echo
    "<label>Carica il tuo file:</label>";
    echo
    "<input type='file' name='nomeFoto' />";
    echo
    "<br/>";
    echo
    "<input id='CaricaImmagine' type='submit' value='Carica online' onclick='return validate(this);'/><br/><br/>";
    echo
    "</form>";
    //Definiamo la directory di upload, dove mettere le nostre immagini
    define('UPLOAD_DIR', './immagini/');
    //
    if(isset($_POST['action']) and $_POST['action'] == 'upload')
    {
    //se abbiamo cliccato l'immagine da caricare
    if(isset($_FILES['nomeFoto']))
    {
    //recupero il nome
    $file = $_FILES['nomeFoto'];
    //se è tutto ok definismo il percorso e metto l'immagine nella cartella(controlliamo anche che sia stato caricato in upload
    //con tmp_name is_uploaded_file)
    if($file['error'] == UPLOAD_ERR_OK and is_uploaded_file($file['tmp_name']))
    {
    //percorso e muovo il file fisicamente
    $percorso = UPLOAD_DIR.$file['name'];
    move_uploaded_file($file['tmp_name'], UPLOAD_DIR.$file['name']);
    }
    }
    }

    //Impostiamo dove andiamo a leggere, in questo caso la cartella immagini dentro al nostro progetto
    $dir_immagine = new DirectoryIterator('./immagini');

    //scorriamo tutta la directory
    foreach ($dir_immagine as $fileIMG){

    //determiniamo che sia un file(togliamo i puntini inutili)
    if($fileIMG->isFile()) {

    //recuperiamo nome e percorso da passare al template
    $nome=$fileIMG->getFilename();
    $percorso = './immagini/'.$nome;

    //stampiamo il template
    echo "<p class='immaginiRiga' style='display : inline; margin : 0.5%;'>";
    echo
    "<a class='fancybox-buttons' data-fancybox-group='button' href='$percorso' title='$file'><img src='$percorso' style='width: 120px;height: 80px' alt='' /></a>";
    echo
    "</p>";
    }
    }

    echo
    '<style type="text/css">
    .fancybox-custom .fancybox-skin {
    box-shadow: 0 0 50px #222;
    }

    body {
    max-width: 800px;
    margin: 0 auto;
    }
    </style>'
    ;

    ?>
    Ultima modifica di fractalcosmo : 14-03-2015 alle ore 02.35.53

  2. #2
    londontrip non è connesso Neofita
    Data registrazione
    30-05-2009
    Messaggi
    1

    Predefinito

    Ciao! Ho trovato il tuo script praticamente perfetto per le mie esigenze, ho solo un problema: l'ordine delle foto! Io vorrei che in testa alla pagina si vedesse l'ultima immagine che carico, invece l'ordine è sparso. Ho cercato in rete un modo per ordinare le foto, ma nulla! Sai aiutarmi? TNX!

  3. #3
    Guest

    Predefinito

    Inserisci le immagini in um array e poi lo inverti con rsort() oppure con array_reverse ().

  4. #4
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,650

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •