Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 16
  1. #1

    data di ultima modifica che varia in base al server

    salve ragazzi mi sta succedendo una cosa veramente strana a cui non sono in grado di dare risposta, ovvero con il seguente codice:

    Codice PHP:
    <?php 
    include './inc/home_it.inc.php';
    $ourFileName './inc/home_it.inc.php';
    $stat=stat($ourFileName);
    $lastmodified=$stat['mtime'];    //ultima modifica 
    ?>

    <p class="date">
        [img]images/comment.gif[/img] 
        Ultimo aggiornamento <?php echo format_date(date("d F Y H:i:s."$lastmodified));?> 
    </p>
    dovrei sapere la data di ultimo accesso al file './inc/home_it.inc.php'. Infatti quando questo script gira in locale (cioè sul mio portatile) mi compare la data carretta, ovvero:
    Ultimo aggiornamento Sabato, 3 Novembre 2007 - 10:39
    mentre quando questi viene eseguito sul server di Aruba (dove ho il dominio) mi compare :
    Ultimo aggiornamento Giovedì, 1 Gennaio 1970 - 00:59
    Come è possibile?
    Giuseppe SPECCHIO

  2. #2
    controlla cosa contiene il vettore.

    print_r($stat);

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  3. #3
    sul web server del mio portatile compare:

    Array ( [0] => 2049 [1] => 3169256 [2] => 33188 [3] => 1 [4] => 1000 [5] => 1000 [6] => -1 [7] => 2450 [8] => 1194206700 [9] => 1194082774 [10] => 1194082774 [11] => -1 [12] => -1 [dev] => 2049 [ino] => 3169256 [mode] => 33188 [nlink] => 1 [uid] => 1000 [gid] => 1000 [rdev] => -1 [size] => 2450 [atime] => 1194206700 [mtime] => 1194082774 [ctime] => 1194082774 [blksize] => -1 [blocks] => -1 )

    mentre su Aruba:

    Array ( [0] => 20 [1] => 64206375 [2] => 33188 [3] => 1 [4] => 1287 [5] => 100 [6] => 0 [7] => 2450 [8] => 1194206883 [9] => 1194200205 [10] => 1194200205 [11] => 32768 [12] => 16 [dev] => 20 [ino] => 64206375 [mode] => 33188 [nlink] => 1 [uid] => 1287 [gid] => 100 [rdev] => 0 [size] => 2450 [atime] => 1194206883 [mtime] => 1194200205 [ctime] => 1194200205 [blksize] => 32768 [blocks] => 16 )

    come si vede i valori sono diversi in particolarmodo mtime, cioè quello ke mi interessa!
    Giuseppe SPECCHIO

  4. #4
    metti prima del print_r()

    echo "<pre>";
    print_r($stat);

    sara' un po' piu' leggibile.

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  5. #5
    Eccomi, sul mio pc con data corretta:

    codice:
    Array
    (
        [0] => 2049
        [1] => 3169256
        [2] => 33188
        [3] => 1
        [4] => 1000
        [5] => 1000
        [6] => -1
        [7] => 2450
        [8] => 1194207968
        [9] => 1194082774
        [10] => 1194082774
        [11] => -1
        [12] => -1
        [dev] => 2049
        [ino] => 3169256
        [mode] => 33188
        [nlink] => 1
        [uid] => 1000
        [gid] => 1000
        [rdev] => -1
        [size] => 2450
        [atime] => 1194207968
        [mtime] => 1194082774
        [ctime] => 1194082774
        [blksize] => -1
        [blocks] => -1
    )

    mentre su Aruba:

    codice:
    Array
    (
        [0] => 20
        [1] => 64206375
        [2] => 33188
        [3] => 1
        [4] => 1287
        [5] => 100
        [6] => 0
        [7] => 2450
        [8] => 1194208167
        [9] => 1194200205
        [10] => 1194200205
        [11] => 32768
        [12] => 16
        [dev] => 20
        [ino] => 64206375
        [mode] => 33188
        [nlink] => 1
        [uid] => 1287
        [gid] => 100
        [rdev] => 0
        [size] => 2450
        [atime] => 1194208167
        [mtime] => 1194200205
        [ctime] => 1194200205
        [blksize] => 32768
        [blocks] => 16
    )
    la cosa strana è che il server aruba mi da la data sbagliata anche se uso

    Codice PHP:
    $actualdate date ("D F Y H:i:s"); 
    echo 
    format_date($actualdate); 
    Giuseppe SPECCHIO

  6. #6
    l'ora dell'ultimo accesso (atime) e' la stessa....

    2007-11-04 21:26:08 <---- il tuo
    2007-11-04 21:29:27

    mentre quella dell'ultima modifica (mtime) nel tuo e' di ieri, mentre l'altro di oggi....


    nella tua prima segnalazione: Giovedì, 1 Gennaio 1970 - 00:59

    si tratta di una data mancante oppure non valida per date()


    per verificare la data:

    echo $actualdate = date ("D F Y H:i:s");

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  7. #7
    Il problema dovrebbe essere la mia funzione format_date() , ma come si spiega che sul mio portatile funziona correttamente e su Aruba no?
    Giuseppe SPECCHIO

  8. #8
    Originariamente inviato da peppespe
    Il problema dovrebbe essere la mia funzione format_date() , ma come si spiega che sul mio portatile funziona correttamente e su Aruba no?
    ma cose' format_date ????

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  9. #9
    è una funzione che mi formatta la data in italiano:

    richiamo nello script:
    Codice PHP:
    //funzione che formatta le date estese in lingua italiana
    include("./functions/format_date.php"); 
    codice funzione:
    Codice PHP:
    //formatta la data in italiano
    function format_date($d) {

        
    $d strtotime($d);
        
    $gs date("w",$d); // Giorno della settimana
        
    switch ($gs) {
             case 
    0:
                 
    $return "Domenica, ";break;
             case 
    1:
                 
    $return "Luned&igrave;, ";break;
             case 
    2:
                 
    $return "Marted&igrave;, ";break;
             case 
    3:
                 
    $return "Mercoled&igrave;, ";break;
             case 
    4:
                 
    $return "Gioved&igrave;, ";break;
             case 
    5:
                 
    $return "Venerd&igrave;, ";break;
             case 
    6:
                 
    $return "Sabato, ";break;
        }
        
    $g date("j",$d); // Giorno
        
    $return .= $g;

        
    $m date("m",$d); // Mese
        
    switch ($m) {
             case 
    1:
                 
    $return .= " Gennaio ";break;
             case 
    2:
                 
    $return .= " Febbraio ";break;
             case 
    3:
                 
    $return .= " Marzo ";break;
             case 
    4:
                 
    $return .= " Aprile ";break;
             case 
    5:
                 
    $return .= " Maggio ";break;
             case 
    6:
                 
    $return .= " Giugno ";break;
             case 
    7:
                 
    $return .= " Luglio ";break;
             case 
    8:
                 
    $return .= " Agosto ";break;
             case 
    9:
                 
    $return .= " Settembre ";break;
             case 
    10:
                 
    $return .= " Ottobre ";break;
             case 
    11:
                 
    $return .= " Novembre ";break;
             case 
    12:
                 
    $return .= " Dicembre ";break;
        }
        
    $a date("Y",$d); // Anno
        
    $return .= $a." - ";
        
    $o date("H:i",$d); // Orario
        
    $return .= $o;

        return 
    $return;
    }
    //format_date 
    Giuseppe SPECCHIO

  10. #10
    prova a stampare il $return man mano che si forma nella funzione.

    echo $a = date("Y",$d); // Anno
    echo $return .= $a." - ";
    echo $o = date("H:i",$d); // Orario
    echo $return .= $o;


    Pero' preferisco usare due array per gestire questa roba.

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

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.