Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it L'avatar di zamer
    Registrato dal
    Mar 2009
    Messaggi
    14

    Problema con split di una variabile

    Ciao a tutti, è da giorni che sto tentando di risolvere questo problema senza riuscirci... c'è qualcuno che può darmi una mano?
    In pratica ho:

    codice:
    var orariDa ="10:45";
    var orariA = "11:55";
    var ent="10:30 12:30 14:10";
    var usc ="12:00 14:00 15:10";
    ecco, come posso controllare se le ent (entrate) e le usc (uscite) siano comprese nel range tra orariDa a orariA?

    Grazie mille!!!

  2. #2
    Utente di HTML.it
    Registrato dal
    Oct 2009
    Messaggi
    636
    lavora con le date (new Date()) anzichè con le stringhe, converti tutto in secondi e fai dei semplici controlli numerici.

  3. #3
    Utente di HTML.it L'avatar di zamer
    Registrato dal
    Mar 2009
    Messaggi
    14
    Ciao, intanto grazie della risposta. Io ho risolto ma in modo diverso:

    codice:
    var orariDa ="10:45"; //variabile degli orari lavorativi (Inizio)
    var orariA = "11:55"; //variabile degli orari lavorativi (Fine) 
    var ent="10:30 12:30 14:10"; //orari entrata rilevati
    var usc ="12:00 14:00 15:10"; //orari uscita rilevati
    var i=0; 
    
    var uscarr=usc.split(' ');
    var enarr=ent.split(' ');
    
    for (i = 1; i < enarr.length; i++) {
         var st = [enarr[i]];
         var sv = [usarr[i]];
    var daReplace = orariDa.replace(':', '');
    var aReplace = orariA.replace(':', '');
    var enReplace=enarr[i].replace(':', '');
    var usReplace=uscarr[i].replace(':', '');
    var stat;
    
    if (parseInt(enReplace) <= parseInt(daReplace) && parseInt(usReplace) >= parseInt(aReplace)) {
    document.getElementById('divCheckOre_' + time_id).innerHTML='dalle ' + orariDa + ' alle ' + orariA + ' OK';
    stat='ok';
    break;
    } else if(stat !='ok') {
    document.getElementById('divCheckOre_' + time_id).innerHTML='dalle ' + orariDa + ' alle ' + orariA + ' ERR1';
    stat='';
    } else {
    document.getElementById('divCheckOre_' + time_id).innerHTML='dalle ' + orariDa + ' alle ' + orariA + ' ERR2';
    stat='';
    }
    }
    Così sembra finalmente funzionare tutto correttamente..Cosa ne pensate? C'è un metodo migliore di questo magari con l'utilizzo di Date() come suggeriva longilineo (se leggi mi potresti fare un esempio?)? Ovviamente essendo in un ciclo attivo le variabili iniziali degli orari e delle rilevazioni cambiano sempre in base alla persona. Ora ovviamente le ho dichiarate io solo per pubblicarle nel forum!! grazie!

  4. #4
    Utente di HTML.it
    Registrato dal
    Oct 2009
    Messaggi
    636
    Codice PHP:
    <script>


    function 
    toMinutes(oreminuti){
      return new 
    Date(200001oreminuti).getTime()/60000;
    }


    function 
    valido(aperturachiusuraentratauscita){
        return 
    entrata>=apertura && uscita<=chiusura;
    }


    var 
    oa toMinutes(10,45); //apertura
    var oc toMinutes(11,55); //chiusura
    var toMinutes(10,45);  //entrata
    var toMinutes(11,55);  //uscita


    alert(valido(oaoceu));


    </script> 

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