Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 13
  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2002
    Messaggi
    123

    photogallery html in PHP

    Ciao a tutti io sto creando una fotogallery in PHP e siccome il codice deve essere inserito in una pagina html, sono so come creare una tabella e dentro la quale mettere il codice PHP.



    Posso dire al codice che si trova sotto, che vorrei 5 foto su ogni riga ?

    ecco il codice senza tabella in HTML..

    <html>
    <head>
    <title>ciccio ccioioco</title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    </head>

    <body>
    <?
    // Specificare il percorso della directory che contiene le immagini
    $img_dir = "./foto";
    // Utilizzo opendir per aprire la directory
    $handle = opendir($img_dir);
    // Esploro il contenuto della directory
    while ($files = readdir($handle)) {
    // Preparo le miniature...
    if ($files != "." && $files != ".." && substr($files,strlen($files)-6) == "_s.jpg" ) {
    $foto = $img_dir . '/' . $files;
    $miniatura = $img_dir . '/miniature/' . substr($files,0,strlen($files)-6) . '.jpg';
    $commento = "";
    // ... ed eventuali commenti
    if (file_exists($img_dir . '/' . substr($files,0,strlen($files)-6) . '.txt')) {
    $commento = file_get_contents($img_dir . '/' . substr($files,0,strlen($files)-6) . '.txt') ;
    }
    // Stampo il codice HTML per la visualizzazione della galleria
    print '






    [img]'.$foto.'[/img]'."\n";







    }
    }
    ?>

    </body>
    </html>

  2. #2
    Non risponde correttamente alla tua domanda, però ti posto il codice che uso io:
    Codice PHP:
    <?php
    include('structure.php');
    top(); //questa funzione è solo per definire l'intestazione della pagina
    echo '<center><h5>Galleria Fotografica</h5></center>
    '
    ;
    //ecco qui che creo la tabella che serve
    echo '<table width="685" cellspacing="0" cellspacing="0" align="center"><tr><td align="center">';

    $init 0//questo è un valore utile per mettere 5 foto su ogni riga
    if ($handle opendir('images/gallery')) {
      while (
    false !== ($file readdir($handle))) {
        if (
    $file != "." && $file != ".." && $file != 'thumb' && strtolower($file) != 'thumbs.db') {
          
    $nome '';
          
    $x 0;
          while(
    $file{$x} != '.') {
            
    $nome .= $file{$x};
            
    $x++; 
          }
          echo 
    '[url="images/gallery/' $file '"][img]images/gallery/thumb/' $file '[/img][/url]';
          
    $init++; //Ad ogni miniatura inserita il valore si incrementa
          
    if($init 5//se il valore è minore di 5, inserisco degli spazi e vado avanti
          
    {
            echo 
    '';
          }
          else 
    //altrimenti chiudo i tag di riga e ne inserisco di nuovi per una riga vuota
          
    {
            echo 
    '</td></tr><tr><td align="center">';
            
    $init 0//e ovviamente resetto il contatore
          
    }
        }
      }
      
    closedir($handle);
    }

    echo 
    '
    </td></tr></table>'
    //infine chiudo la tabella

    foot(); //come top(): serve per definire la fine pagina, ma a te non dovrebbe interessare.
    ?>
    dove vedi nel codice rel="lightbox" è un tag inserito per usare la feature LightBox appunto, ma se non ti interessa, puoi ometterlo o sostituirlo ad esempio con una funzione Javascript per aprire la foto cliccando sulla miniatura.
    "Una volta che si saranno esaurite senza successo tutte le possibilita', ci sara' una soluzione, semplice e ovvia, che saltera' immediatamente all'occhio di chiunque altro."

    Guardate: Il Miracolo delle Noci!!

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2002
    Messaggi
    123
    grazie ma nopn capisco bene cosa hai scritto poichà il PHP non mi è molto familiare....
    Ma che dici è possibile implementare il mio ?

    oppure se utilizzo il tuo, cosa significa include('structure.php'); ?

    devo caricare un'altra pagina ?

    e poi tutto questo codice lo devo inserire semplicemente dentro la mia cella ?

    grazie

  4. #4
    Utente di HTML.it
    Registrato dal
    Jun 2002
    Messaggi
    123
    sto cercando di utilizzare l'esempio inviatomi, ma il problema è il recupero delle miniature e delle foto da ingrandire....

    La mia struttura è composta da una cartella FOTO dove ci sono le foto grandi e dentro la quale c'è una cartella miniature on tutte le MINIATURE....

    come faccio ad indicare questo percorso
    ?
    non capisco la funzione della scritta THUMS

  5. #5
    Utente di HTML.it
    Registrato dal
    Jun 2002
    Messaggi
    123
    ho provato ....... funziona, ma riesco a vedere massimo 6 foto e non di più.
    come fare ?...

    mi da un errore alla riga 18...
    ecco il codice:
    ______________________________

    <html>
    <head>
    <title>Documento senza titolo</title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    </head>

    <body>

    <?php
    //ecco qui che creo la tabella che serve
    echo '<table width="685" cellspacing="0" cellspacing="0" align="center" border="1"><tr><td align="left">';

    $init = 0; //questo è un valore utile per mettere 5 foto su ogni riga
    if ($handle = opendir('foto/')) {
    while (false !== ($file = readdir($handle))) {
    if ($file != "." && $file != ".." && $file != 'thumb' && strtolower($file) != 'thumbs.db') {
    $nome = '';
    $x = 0;
    while($file{$x} != '.') {
    $nome .= $file{$x};
    $x++;
    }
    echo '<a href="foto/miniature/' . $file . '" rel="lightbox" title="'. $nome .'">
    [img]foto/miniature/' . $file . '[/img]</a>';
    $init++; //Ad ogni miniatura inserita il valore si incrementa
    if($init < 5) //se il valore è minore di 5, inserisco degli spazi e vado avanti
    {
    echo '';
    }
    else //altrimenti chiudo i tag di riga e ne inserisco di nuovi per una riga vuota
    {
    echo '</td></tr><tr><td align="left">';
    $init = 0; //e ovviamente resetto il contatore
    }
    }
    }
    closedir($handle);
    }

    echo '
    </td></tr></table>'; //infine chiudo la tabella


    ?>



    </body>
    </html>





    ______________________________

  6. #6
    1) Qual'è la riga 18?
    2) Potresti usare i tag
    Codice PHP:
    script 
    per evidenziare la sintassi che mi sta andando insieme la vista?? eheh

    Suppongo comunque che la riga 18 sia questa:
    Codice PHP:
     $x 0
    ma non vedo errori...

    Quello che vuoi fare è stampare più immagini per riga, è corretto?
    Questa e' la mia firma! Lo so, e' una mezza schifezza.
    Un sito
    - skype non è per consulenze online -

  7. #7
    sarebbe bene anche che ci dicessi che errore ti da.
    "Una volta che si saranno esaurite senza successo tutte le possibilita', ci sara' una soluzione, semplice e ovvia, che saltera' immediatamente all'occhio di chiunque altro."

    Guardate: Il Miracolo delle Noci!!

  8. #8
    Utente di HTML.it
    Registrato dal
    Jun 2002
    Messaggi
    123
    mi dice solo che ci mette più di 15 secondi per caricare la pagina........ infatti è veramente lentissima e poi mi dice a volte la riga 18 e a volte la riga 19....


    comunque il mio obbiettivo e far stampare sulla pagina tutte le foto contenute nella cartella miniatura organizzate 5 per ogni riga.....

    Il problema è che me ne fa vedere sempre e solo 6 e non di più, anche se nella cartella ce ne sono 50 di foto...


    impazzisco !

    grazie veramente per la collaborazione.... confido in voi.

  9. #9
    evidentemente il recupero delle immagini è un processo che richiede parecchio tempo (strano che ne richieda così tanto però...)..
    Nella cartella ci sono SOLO immagini? O anche altri files (cartelle escluse)...

    Se ti stampa solo sei foto e si blocca vuol dire che l'errore è dell'interprete, non tanto dello script, il più delle volte...

    Non ci ho ragionato molto sopra, ma giusto x curiosità prova a fare girare il tuo script in questo modo:
    Codice PHP:
    <html>
    <head>
    <title>Documento senza titolo</title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    </head>

    <body>

    <?php
    //ecco qui che creo la tabella che serve
    echo '<table width="685" cellspacing="0" cellspacing="0" align="center" border="1"><tr><td align="left">';

    $init 0//questo è un valore utile per mettere 5 foto su ogni riga
    if ($handle opendir('foto/')) {
    while (
    false !== ($file readdir($handle))) {
    if (
    $file != "." && $file != ".." && $file != 'thumb' && strtolower($file) != 'thumbs.db') {
    $nome '';
    $x 0;
    while(
    $file{$x} != '.') {
    $nome .= $file{$x};
    $x++;
    }
    echo 
    '<a href="foto/miniature/' $file '" rel="lightbox" title="'$nome .'">
    [img]foto/miniature/' 
    $file '[/img]</a>';
    $init++; //Ad ogni miniatura inserita il valore si incrementa
    if($init 7//se il valore è minore di 7 (was 5), inserisco degli spazi e vado avanti
    {
    echo 
    '   ';
    }
    else 
    //altrimenti chiudo i tag di riga e ne inserisco di nuovi per una riga vuota
    {
    echo 
    '</td></tr><tr><td align="left">';
    $init 0//e ovviamente resetto il contatore
    }
    }
    }
    closedir($handle);
    }

    echo 
    '
    </td></tr></table>'
    //infine chiudo la tabella


    ?>



    </body>
    </html>
    è un metodo "panzer" per verificare se l'errore è nello script o nell'interprete ^^
    Questa e' la mia firma! Lo so, e' una mezza schifezza.
    Un sito
    - skype non è per consulenze online -

  10. #10
    Utente di HTML.it
    Registrato dal
    Jun 2002
    Messaggi
    123
    il problema è lo stesso.....

    guarda cosa succede http://www.vittyhorse.altervista.org/galleria.php

    se immagini sono sempre e solo quelle...

    come fare ? ti prego solo tu mi puoi aiutare

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.