Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 19

Discussione: Ordinare per data

  1. #1

    Ordinare per data

    Ciao a tutti, ho uno script che legge il contenuto di una cartella e mostra le immagini contenute, ora però questo script mi ordina i file in ordine alfabetico, a me servirebbe che me li ordinasse in ordine cronologico, dal più nuovo al più vecchio.
    Come posso fare?

    non uso un database

  2. #2
    diamo un occhiata allo script e vedo kome posso aiutarti, anche se non so se senza un database si puo effettivamente fare...probabilmente qualcuno potrebbe smentirmi

  3. #3
    non sono espertissimo di php posto tutto

    Codice PHP:
    <?php

    class galleria{
        function 
    galleria($ext_permesse){
            
    $this->ext_permesse=$ext_permesse;
            
    $this->immagini=array();
        }

        function 
    leggi_dir($path){        
            
    // LETTURA DELLA DIRECTORY
            
    if (!is_dir($path))
                echo 
    "[b]$path[/b] NON E' UNA DIRECTORY VALIDA!";
            else {
                
    $d dir($path);
                while (
    $immagine $d->read()) {
                    if (
    $immagine != "." && $immagine != ".." && in_array(array_pop(explode(".",$immagine)),$this->ext_permesse)){
                        
    $this->immagini[]=$path.$immagine;
                    }
                }
                
    $d->close();
            }
        }

        function 
    stampa(){

            
    // PREPARAZIONE DELL'OUTPUT COME TABELLA HTML

            
    $output="<table>\n";
            
    $output.="<tr>\n";
            
    $cont=1;
            foreach(
    $this->immagini as $immagine){
                
    $output.="<td><img src=\"".FILE_RIDIMENSIONA."?immagine=$immagine\" alt=\"$immagine\" /> 
    $immagine 

    <hr /></td>\n"
    ;
                if (
    $cont NUMEROCOLONNE == 0)
                    
    $output.="</tr><tr>\n";
                
    $cont++;
            }
            if ((
    $cont-1) % NUMEROCOLONNE == 0)
                
    $output=substr($output,0,-5)."\n";
            
    $numero_immagini=count($this->immagini);
            
    $temp=ceil($numero_immagini/NUMEROCOLONNE)*NUMEROCOLONNE-$numero_immagini;
            for (
    $i=0;$i<$temp;$i++)
                
    $output.="<td> </td>\n";
            if (
    $temp != 0)
                
    $output.="</tr>\n";
            
    $output.="<table>\n";
            
    // OUTPUT DELLA TABELLA
            
    echo $output;
        }
    }
    ?>

  4. #4
    Utente bannato L'avatar di Illustre
    Registrato dal
    Apr 2007
    Messaggi
    11
    come puoi puoi fare un ordinamento cronologico delle immagini se non hai un campo dove setti una data ?

  5. #5
    Utente di HTML.it L'avatar di dottwatson
    Registrato dal
    Feb 2007
    Messaggi
    3,012
    Codice PHP:
    class galleria{
        function 
    galleria($ext_permesse){
            
    $this->ext_permesse=$ext_permesse;
            
    $this->immagini=array();
        }

        function 
    leggi_dir($path){        
            
    // LETTURA DELLA DIRECTORY
            
    if (!is_dir($path))
                echo 
    "[b]$path[/b] NON E' UNA DIRECTORY VALIDA!";
            else {
                
    $d dir($path);
                while (
    $immagine $d->read()) {
                    if (
    $immagine != "." && $immagine != ".." && in_array(array_pop(explode(".",$immagine)),$this->ext_permesse)){
                        
    $this->immagini[filectime($immagine)]=$path.$immagine;
                    }
                }
                
    $d->close();
                
    ksort($this->immagini);
            }
        } 
        } 
    Non sempre essere l'ultimo è un male... almeno non devi guardarti le spalle

    il mio profilo su PHPClasses e il mio blog laboweb

  6. #6
    Utente di HTML.it L'avatar di dottwatson
    Registrato dal
    Feb 2007
    Messaggi
    3,012
    Originariamente inviato da Illustre
    come puoi puoi fare un ordinamento cronologico delle immagini se non hai un campo dove setti una data ?
    si parla di file, dove è proprietà del file stesso proprio il dato 'data'.

    bisogna solo saper fare l'interrogazione giusta
    Non sempre essere l'ultimo è un male... almeno non devi guardarti le spalle

    il mio profilo su PHPClasses e il mio blog laboweb

  7. #7
    Utente bannato L'avatar di Illustre
    Registrato dal
    Apr 2007
    Messaggi
    11
    già su questo non c'è dubbio.

    peccato che il nostro amico non aveva ancora fatto quel "passaggio", e a mio parere postare la soluzione non aiuta molto nel ragionamento di "apprendimento".

    Saluti

  8. #8
    Utente di HTML.it L'avatar di dottwatson
    Registrato dal
    Feb 2007
    Messaggi
    3,012
    Originariamente inviato da Illustre
    già su questo non c'è dubbio.

    peccato che il nostro amico non aveva ancora fatto quel "passaggio", e a mio parere postare la soluzione non aiuta molto nel ragionamento di "apprendimento".

    Saluti
    un discorso è uno che ti arriva senza niente in mano e chiede la pappa pronta, un' altro invece è quando un passaggio non ti riesce perchè ignori l'esistenza di una funzione / meccanismo, poi è chiaro che una volta vista la soluzione una persona intelligente si informa e studia un attimino il meccanismo, viceversa rimane nella sua ignoranza.
    Non sempre essere l'ultimo è un male... almeno non devi guardarti le spalle

    il mio profilo su PHPClasses e il mio blog laboweb

  9. #9
    Utente bannato L'avatar di Illustre
    Registrato dal
    Apr 2007
    Messaggi
    11
    certo,

  10. #10
    grazie per l'aiuto, ma non mi funziona

    mi dice Warning: filectime() [function.filectime]: stat failed for katun.jpg in C:\wamp\www\net\galleria.class.php on line 28

    la linea 28 è questa
    Codice PHP:
    $this->immagini[filectime($immagine)]=$path.$immagine

    e mi da questo errore
    Fatal error: Call to undefined method galleria::stampa() in C:\wamp\www\net\index.php on line 16

    Codice PHP:
    <?php
    error_reporting
    (E_ALL);
    require_once(
    "config.php");
    require_once(
    "galleria.class.php");

    //RICHIAMO ALCUNI PARAMETRI DI CONFIGURAZIONE
    define("NUMEROCOLONNE",$numerocolonne);
    define("FILE_RIDIMENSIONA",$nomefileridimensiona);

    // ISTANZIA LA CLASSE, SPECIFICANDO LE ESTENSIONI CONSENTITE (JPG - GIF - PNG)
    $galleria=new galleria(array("jpg","gif"));
    // AGGIUNGI LE DIRECTORY CONTENTI LE IMMAGINI
    $galleria->leggi_dir("hd/");

    // CREA LA TABELLA
    $galleria->stampa();


    ?>
    la riga 16 è $galleria->stampa();

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 © 2025 vBulletin Solutions, Inc. All rights reserved.