• User Attivo

    problema con le date

    Ciao a Tutti
    image sono un vero phpi..ne,
    ho scritto questo codice ma non ne vuole sapere di eseguire la funzione!!!

    <?php
    $gg = $row_Recordset1['data];
    $mo = $_SERVER['REQUEST_TIME']; o posso scrivere getdate()?
    if ($mo > $gg)
    {
    echo "Sono passati ";
    }
    else
    {
    echo "Mancano ";
    }
    echo floor((mktime()-strtotime($gg))/86400); echo " giorni";
    ?>

    mi spiego: ho un campo data e pescando in quel campo devo determinare quanti gg "mancano" alla data e fin qui tutto bente, poi mi industrio e dico "vorrei che se la data di oggi è maggiore i gg "sono passati"..
    argh!! if e else mi scrivono o tutto "mancano" o tutto s"ono passati" non tenendo conto delle differenti date nel campo data

    grazie in anticipo


  • User Attivo

    ciao a tutti
    image sono un vero phpi..ne,
    ho scritto questo codice ma non ne vuole sapere di eseguire la funzione!!!

    <?php
    $gg = $row_Recordset1['data];
    $mo = $_SERVER['REQUEST_TIME']; o posso scrivere getdate()?
    if ($mo > $gg)
    {
    echo "Sono passati ";
    }
    else
    {
    echo "Mancano ";
    }
    echo floor((mktime()-strtotime($gg))/86400); echo " giorni";
    ?>

    mi spiego: ho un campo data e pescando in quel campo devo determinare quanti gg "mancano" alla data e fin qui tutto bente, poi mi industrio e dico "vorrei che se la data di oggi è maggiore i gg "sono passati"..
    argh!! if e else mi scrivono o tutto "mancano" o tutto s"ono passati" non tenendo conto delle differenti date nel campo data

    grazie in anticipo


  • User Attivo

    Cosa c'è in $gg? Un campo data di database? Che formato ha?
    Se ha un formato tipo: 21-10-2007 non puoi confrontarlo con un'altra data (simile o diversa che sia)

    Poi mktime() richiede degli argomenti, se volevi la unix timestamp dovevi usare time()

    Ammesso che in $gg hai un formato data che strtotime digerisce allora dovevi fare qualcosa simile a questo:

    
    $gg = strtotime($row_Recordset1['data']);
    $mo = time();
    if ($mo > $gg)
      echo "Sono passati ";
    else
      echo "Mancano ";
     
    echo floor(($mo-$gg)/86400) . " giorni";
     
    
    

  • User Attivo

    Funziona!! ora posso sapere quanti gg mancano a una certa data e quanti sono passati da una certa data!!!
    mi rendo conto che avevo toppato proprio la sintassi..
    devo studiare di più..
    Grazie!

    Se posso abusare della cortesia.. quando manca una settimana alla certa data è possibile inviare una mail di avvertimento?

    magari con un refresh della pagina e $_SERVER['REQUEST_TIME'] che fa il check del campo data?

    ThankS! 😄


  • User

    Prova prova così

    [php]
    <?php
    $gg = $row_Recordset1['data];
    $mo = time();
    if ($mo > $gg)
    {
    echo "Sono passati ";
    }
    else
    {
    echo "Mancano ";
    }
    echo abs(floor(($mo-$gg)/86400); echo " giorni";
    ?>
    [/php]