Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2006
    Messaggi
    89

    data compresa tra due date

    Ciao, sto cercando di determinare se la data odierna è comrpesa tra due date predeterminate.
    Il sitema che utilizzo è questo:

    Codice PHP:
    var myDate = new Date(2008916);

    // is myDate between Sept 1 and Sept 30?

    var startDate = new Date(200891);
    var 
    endDate = new Date(2008930);

    if (
    startDate myDate && myDate endDate) {
            
    alert('yes');
            
    // myDate is between startDate and endDate

    Io però avrei bisogno che la variabile myDate corrisponda alla data odierna e non ad una data predeterminata.

    Credo di dover utilizzare qualcosa come
    Codice PHP:
    var now = new Date();
    now.setYear(...);
    now.setMonth(...); 
    Ma non so esattamente come.

    QUalche aiuto? grazie.

  2. #2
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998

    Re: data compresa tra due date

    Codice PHP:
    var now = new Date(); 
    E basta

    ciao
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  3. #3
    Utente di HTML.it
    Registrato dal
    Oct 2006
    Messaggi
    89
    Ciao,
    ora lo script funziona correttamente

    Codice PHP:
    var now = new Date();


                    
    // 18 LUGLIO
                    
    var startDate = new Date(201061);
                    var 
    endDate = new Date(2010618);
                    if (
    startDate now && now endDate) {
                    
    fai qualcosa
                    

    Il problema è che se la data coincide con la endDate non viene eseguito "fai qualcosa".

    Ho provato con il minore uguale ma non funziona:

    Codice PHP:
    var now = new Date();


                    
    // 18 LUGLIO
                    
    var startDate = new Date(201061);
                    var 
    endDate = new Date(2010618);
                    if (
    startDate now && now <= endDate) {
                    
    fai qualcosa
                    

    Ho anche provato con:

    Codice PHP:
    var now = new Date();


                    
    // 18 LUGLIO
                    
    var startDate = new Date(201061);
                    var 
    endDate = new Date(2010618);
                    if ( (
    startDate now && now endDate) || (now endDate) ) {
                    
    fai qualcosa
                    

    dove sbaglio?

  4. #4
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    In effetti in quel modo si crea una copia della data/ora attuale... che si aggiorna continuamente

    Usa questo:

    var now = new Date()
    var now = new Date(now.getFullYear(), now.getMonth(), now.getDate());

    oppure, piu' semplicemente, aggiungi 1 giorno alla data di scadenza

    ciao
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  5. #5
    Utente di HTML.it
    Registrato dal
    Oct 2006
    Messaggi
    89
    Aggiungere un giorno alla data di scadenza non posso, perché ho una serie di date suddivise per settimane consecutive, aggiungedo un giorno mi si sovrapporrebbero la data di inizio con quella di fine.

    Proverò con

    Codice PHP:
    var now = new Date()
    var 
    now = new Date(now.getFullYear(), now.getMonth(), now.getDate()); 
    Poi posterò il risultato. Intanto grazie.

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.