Navigazione

    Privacy - Termini e condizioni
    © 2020 Search On Media Group S.r.l.
    • Registrati
    • Accedi
    • CATEGORIES
    • Discussioni
    • Non letti
    • Recenti
    • Hashtags
    • Popolare
    • Utenti
    • Stream
    • Interest
    • Categories
    1. Home
    2. Categorie
    3. Coding e Sistemistica
    4. Coding
    5. strtoime e la data maggiore e minore
    Questa discussione è stata cancellata. Solo gli utenti con diritti di gestione possono vederla.
    • A
      alessiofbt Bannato User Attivo • 13 feb 2007, 14:13 ultima modifica di

      strtoime e la data maggiore e minore

      Praticamente avevo scritto una cosa del genere:

      [PHP]$timer=fopen("zero.dat","r");
      $timer2=fread($timer,filesize("zero.dat"));
      $datadioggi = date ("M d, Y g:i:s a");
      $datamod = date('M d, Y g:i:s a', strtotime("$timer2 + 1 minute"));
      if ($datadioggi < $datamod2) {
      echo "Devi attendere altri 60 secondi";
      exit;
      }[/PHP]

      dove dentro zero.dat c'è la data:
      Gen 12, 2007 1:16:17 pm

      dovrebbe controllare se la data scritta in zero.dat sia minore di almeno 60 secondi da quella attuale.

      Tutto va bene se vengono usate due date dello stesso mese, ma se ne utilizzo una di gennaio e l'attuale di febbario ho seri problemi.

      Come posso fare?

      non è necessario comunque riparare questo se avete altre alternative postate pure 😉

      0 Miglior Risposta Ringrazia Cita Rispondi

        1 Risposta Ultima Risposta
        Caricamento altri post
        Rispondi
        • Topic risposta
        Effettua l'accesso per rispondere
        • Da Vecchi a Nuovi
        • Da Nuovi a Vecchi
        • Più Voti
         

      • M
        melkor User • 14 feb 2007, 11:10 ultima modifica di

        ma sbaglio o strtotime dovrebbe restituire un date formato unix time?
        quindi ti basterà fare cosi'

        $timer=fopen("zero.dat","r");
        $timer2=fread($timer,filesize("zero.dat"));
        $datamod = strtotime($timer2);
        $sum = mktime ( date("h"), date("i"), date("s") + 60, date("m"), date("d"), date("Y") );

        if ($datamod < $sum) {
        echo "Devi attendere altri 60 secondi";
        exit;
        }

        0 Miglior Risposta Ringrazia Cita Rispondi

          1 Risposta Ultima Risposta
        • A
          alessiofbt Bannato User Attivo • 15 feb 2007, 17:19 ultima modifica di

          @Melkor said:

          ma sbaglio o strtotime dovrebbe restituire un date formato unix time?
          quindi ti basterà fare cosi'

          $timer=fopen("zero.dat","r");
          $timer2=fread($timer,filesize("zero.dat"));
          $datamod = strtotime($timer2);
          $sum = mktime ( date("h"), date("i"), date("s") + 60, date("m"), date("d"), date("Y") );

          if ($datamod < $sum) {
          echo "Devi attendere altri 60 secondi";
          exit;
          }

          non funziona cosi....:?

          mi da sempre da attendere altri 60 secondi

          e mi alle costanti ha assegnato i valori di:

          -1 e 1171517397

          e quindi fa una variabile di:

          if (-1 < 1171517397)

          :bho: ?

          0 Miglior Risposta Ringrazia Cita Rispondi

            1 Risposta Ultima Risposta
          • M
            melkor User • 15 feb 2007, 17:56 ultima modifica di

            -1 è il valore restituito dalla funzione strtotime se non viene riconosciuto il formato della data!
            è molto probabile che nn riconosca la data nel file zero.dat

            molto probabilmente perchè Gen 12, 2007 1:16:17 pm è scritta in italiano 🙂 lui l'aspetta in eng 😉

            0 Miglior Risposta Ringrazia Cita Rispondi

              1 Risposta Ultima Risposta
            • A
              alessiofbt Bannato User Attivo • 15 feb 2007, 17:59 ultima modifica di

              @Melkor said:

              -1 è il valore restituito dalla funzione strtotime se non viene riconosciuto il formato della data!
              è molto probabile che nn riconosca la data nel file zero.dat

              molto probabilmente perchè Gen 12, 2007 1:16:17 pm è scritta in italiano 🙂 lui l'aspetta in eng 😉

              e come diventa in inglese?

              0 Miglior Risposta Ringrazia Cita Rispondi

                1 Risposta Ultima Risposta
              • M
                melkor User • 15 feb 2007, 18:01 ultima modifica di

                la data dentro il file zero.dat la metti te? tramite altro script? o te la genera qualche applicazione da te non controllabile?

                perchè se è cosi' gli fai mettere una data di questo formato:
                "Y-m-d H:i:s"
                strtotime sicuramente la riconosce e tutto funziona!

                0 Miglior Risposta Ringrazia Cita Rispondi

                  1 Risposta Ultima Risposta
                • A
                  alessiofbt Bannato User Attivo • 17 feb 2007, 14:16 ultima modifica di

                  Ma è normale che il primo $datamod sia maggiore al secondo $sum?

                  ma non dovrebbe essere il contrario?

                  comunque non funziona ottengo questo

                  $datamod $sum
                  1171722184 e 1171679250

                  è chiaro che cosi non entrerà mai nella variabile, e neanche se faccio l'iverso funziona.....che devo fare.

                  0 Miglior Risposta Ringrazia Cita Rispondi

                    1 Risposta Ultima Risposta
                  • M
                    melkor User • 17 feb 2007, 15:21 ultima modifica di

                    sum nn è altro che la data e ora di quel momento + 60 secondi

                    nel tuo file nn so che date c'è quindi vedi te 🙂

                    la soluzione ce l'hai 🙂

                    0 Miglior Risposta Ringrazia Cita Rispondi

                      1 Risposta Ultima Risposta
                    • A
                      alessiofbt Bannato User Attivo • 17 feb 2007, 15:28 ultima modifica di

                      @Melkor said:

                      sum nn è altro che la data e ora di quel momento + 60 secondi

                      nel tuo file nn so che date c'è quindi vedi te 🙂

                      la soluzione ce l'hai 🙂

                      La data dentro zero.dat è 2007-02-17 15:18:21
                      la data in cui ho provato lo script era circa 2 minuti avanti.

                      Ebbene ottengo il primo maggiore del secondo ...molto maggiore :():

                      non c'è quasi mai un equilibrio o si ha in tempi ben oltre i 60 secondi.... :mmm:

                      0 Miglior Risposta Ringrazia Cita Rispondi

                        1 Risposta Ultima Risposta
                      • A
                        alessiofbt Bannato User Attivo • 17 feb 2007, 22:06 ultima modifica di

                        @alessiofbt said:

                        La data dentro zero.dat è 2007-02-17 15:18:21
                        la data in cui ho provato lo script era circa 2 minuti avanti.

                        Ebbene ottengo il primo maggiore del secondo ...molto maggiore :():

                        non c'è quasi mai un equilibrio o si ha in tempi ben oltre i 60 secondi.... :mmm:

                        non è che non capisce che c'è differenza tra le 11 del mattino e quelle di sera?

                        perchè facendo alcuni calcoli come questi:

                        [PHP]$timer2 = "2007-02-17 11:18:21";
                        $datamod = strtotime($timer2);
                        $sum = mktime ( date("h"), date("i"), date("s") + 60, date("m"), date("d"), date("Y") );

                        $op = $datamod - $sum;
                        echo "$datamod < $sum e quindi differenza di $op";
                        if ($datamod < $sum) {
                        echo "Devi attendere altri 60 secondi";
                        exit;
                        }[/PHP]

                        alle ore 23:18 entrambi coincidono più o meno al variare dei secondi.

                        quindi cosa dovrei fare ora???? :mmm:

                        0 Miglior Risposta Ringrazia Cita Rispondi

                          1 Risposta Ultima Risposta
                        Caricamento altri post
                        Rispondi
                        • Topic risposta
                        Effettua l'accesso per rispondere
                        • Da Vecchi a Nuovi
                        • Da Nuovi a Vecchi
                        • Più Voti