Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    calcolare differenza tra 2 date

    Ho la necessità di calcolare la differenza tra 2 date e in base se una data è + vecchia o è uguale ad oggi deve stampare a video Disponibilie mentre se cosi non fosse deve stampare la data di uscita.

    Ho pensato di agire in questo modo.. ho creato un campo nel db che viene caricato ogni volta che si aggiorna la pagina con la data attuale, cosi da poter poi fare il confronto con la data dell'uscita. x caricare la data utilizzo UNIX_TIMESTAMP e il campo nel db è TIMESTAMP. Eseguo poi il confronto ma mi da errore:

    Codice PHP:
    Noticestrtotime(): Called with empty time parameter [...]News.php on line 36

    Notice
    strtotime(): Called with empty time parameter in [...]News.php on line 36 
    il codice che ho scritto è il seguente:
    Codice PHP:
    $insert_dataOdierna "UPDATE opzioni SET dataOdierna='UNIX_TIMESTAMP()'";
    $eseguo_insert mysql_query($insert_dataOdierna);

    $sql_gameinfo "
        SELECT 
            games.*, date_format(dataUscita,\"%d/%m/%Y\") AS data, galleria.img_link, genere.genere, piattaforma.tag, opzioni.dataOdierna,
            date_format(dataOdierna,\"%d/%m/%Y\") AS oggi
        FROM 
            games, galleria, genere, piattaforma, opzioni
        WHERE
            galleria.img_link = games.cover_id AND genere.genere = games.genere_id AND piattaforma.tag = games.piattaforma_id
            "
    ;

    $result_gameinfo mysql_query($sql_gameinfo) or die (mysql_error());

    $row_gameinfo mysql_fetch_array($result_gameinfo);

    // Setto le variabili x semplificare l'inclusione poi nel codice
    $cover $row_gameinfo['cover_id'];
    $img_link $row_gameinfo['img_link'];
    $piattaforma $row_gameinfo['piattaforma_id'];
    $sviluppatore $row_gameinfo['sviluppatore'];
    $produttore $row_gameinfo['produttore'];
    $genere $row_gameinfo['genere'];

    $dataUscita $row_gameinfo['data'];
    $dataOdierna $row_gameinfo['oggi'];

    // Calcolo la differenza in giorni
    $differenza =  (int)(abs(strtotime ("$dataUscita") - strtotime ("$dataOdierna"))/86400); //86400 è il numero di secondi di una giornata (60*60*24)
    // Verifico se il titolo è già uscito o se invece deve ancora uscire
    if($differenza || $differenza 0)
    {
    $uscita "Disponibile";
    }
    else
    {
    $uscita $dataUscita;

    cosa sbaglio? xke nn funziona?
    La rovina del mondo sara' l'indifferenza. Ma chi se ne frega!!

  2. #2
    up
    La rovina del mondo sara' l'indifferenza. Ma chi se ne frega!!

  3. #3
    Originariamente inviato da Chef89
    up
    mi pare molto complesso..... forse troppo.

    puoi fare tutto con una query:

    codice:
    $sql_gameinfo = "
        SELECT games.*, galleria.img_link, genere.genere,
                   piattaforma.tag, opzioni.dataOdierna,
                   if(data_uscita <= curdate(), 'Disponibile', date_format(dataOdierna, '%d/%m/%Y')) as risposta
        FROM
            games, galleria, genere, piattaforma, opzioni
        WHERE
            galleria.img_link = games.cover_id 
            AND genere.genere = games.genere_id 
            AND piattaforma.tag = games.piattaforma_id
            ";
    in "risposta" troverai la scritta "Disponibile" oppure la data_uscita

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