Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12
  1. #1
    Utente di HTML.it L'avatar di alegia76
    Registrato dal
    Mar 2003
    Messaggi
    1,179

    Controllare giorni festivi

    Ciao a tutti!

    Ho un'applicazione che mi dovrebbe controllare che se un giorno è festivo, o non lavorativo (quindi sabato o domenica), mi dovrebbe saltare al prossimo lavorativo!

    Come posso fare?

    Grazie
    Sei l'eventualità di un'anomalia che nonostante i miei più onesti sforzi non sono stato in grado di eliminare da quella che altrimenti sarebbe un'armonia di precisione matematica..

  2. #2
    Utente di HTML.it L'avatar di marco80
    Registrato dal
    May 2005
    Messaggi
    1,357
    un giochino con le date controli ii giorno e quindi la data presa da un db o qualcosa del genere(non hai specificato cosa usi di preciso) la converti con un date(); mktime(); o cose simili e se il giorno il lettere riulta sabato o domnica(a seconda della formattazione) esegui questo o quello.

  3. #3
    Utente di HTML.it L'avatar di Teuzzo
    Registrato dal
    Mar 2002
    Messaggi
    969
    date('w')=0 se è domenica
    date('w')=6 se è sabato

  4. #4
    Utente di HTML.it L'avatar di alegia76
    Registrato dal
    Mar 2003
    Messaggi
    1,179
    Originariamente inviato da marco80
    un giochino con le date controli ii giorno e quindi la data presa da un db o qualcosa del genere(non hai specificato cosa usi di preciso) la converti con un date(); mktime(); o cose simili e se il giorno il lettere riulta sabato o domnica(a seconda della formattazione) esegui questo o quello.
    Uso MySql

    La data la prendo da db se c'è qualcosa di già inserito, o di sistema se sono al primo inserimento!

    Mi piace la soluzione.. ma non saprei come farla! Scusa..

    Mi potresti aiutare?
    Sei l'eventualità di un'anomalia che nonostante i miei più onesti sforzi non sono stato in grado di eliminare da quella che altrimenti sarebbe un'armonia di precisione matematica..

  5. #5
    Utente di HTML.it L'avatar di marco80
    Registrato dal
    May 2005
    Messaggi
    1,357
    che tipo di campo hai nel db? date o timestamp?? 2006-01-04 o 141414124 ??

  6. #6
    Utente di HTML.it L'avatar di Teuzzo
    Registrato dal
    Mar 2002
    Messaggi
    969
    SELECT DAYOFWEEK(DATA) FROM TABELLA

    (1 = Domenica, 2 = Lunedì, ..., 7 = Sabato)

  7. #7
    Utente di HTML.it L'avatar di alegia76
    Registrato dal
    Mar 2003
    Messaggi
    1,179
    Originariamente inviato da marco80
    che tipo di campo hai nel db? date o timestamp?? 2006-01-04 o 141414124 ??
    ti arrabbi se dico varchar(10)?
    Sei l'eventualità di un'anomalia che nonostante i miei più onesti sforzi non sono stato in grado di eliminare da quella che altrimenti sarebbe un'armonia di precisione matematica..

  8. #8
    Utente di HTML.it L'avatar di marco80
    Registrato dal
    May 2005
    Messaggi
    1,357
    Sarebbe opportuno il tipo per date, il fatto e' che con un campo testuale devi essere sicuro che tutte le date siano state inserite con lo stesso modo( simbolo separatore - : . ) e nella stessa sequenza(anno mese giorno). Questo per fare un controllo.

  9. #9
    Utente di HTML.it L'avatar di alegia76
    Registrato dal
    Mar 2003
    Messaggi
    1,179
    Originariamente inviato da marco80
    Sarebbe opportuno il tipo per date, il fatto e' che con un campo testuale devi essere sicuro che tutte le date siano state inserite con lo stesso modo( simbolo separatore - : . ) e nella stessa sequenza(anno mese giorno). Questo per fare un controllo.
    Di questo sono sicurissimo..
    Sei l'eventualità di un'anomalia che nonostante i miei più onesti sforzi non sono stato in grado di eliminare da quella che altrimenti sarebbe un'armonia di precisione matematica..

  10. #10
    Utente di HTML.it
    Registrato dal
    Mar 2004
    Messaggi
    1,141
    Originariamente inviato da Teuzzo
    date('w')=0 se è domenica
    date('w')=6 se è sabato
    Se hai i dati in un campo varchar penso che dovresti esplodere la stringa:

    Codice PHP:
    /*ti crei un array con i giorni festivi nel formato yyyy-mm-dd (o il formato in cui la data è salvata nel DB)
    Ex:
    $arrFeste = ('2005-12-24','2005-12-25','2005-12-26'...);
    */

    $arrFeste = ('2005-12-24','2005-12-25','2005-12-26'...);
    list(
    $anno,$mese,$giorno) = explode('-',$strDate);
    //poi come ti ha scritto Teuzzo:

    $weekDay date('w',mktime(0,0,0,$mese,$giorno,$anno));
    if(
    $weekDay == || $weekDay == || in_array($strDate,$arrFeste))
    echo 
    "giorno festivo";
    else
     echo 
    "giorno lavorativo"
    almeno questo è quello che mi viene in mente ora, non l'ho provata, se vuoi provala e vedi se ti può andare bene....
    ciao

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.