Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Fala galera, blz?
Preciso de uma ajuda.
Tenho um projeto onde devo cumular horas trabalhadas de um serviço, ele deve armazenar no banco as horas/dias.
Então quando startado se não houver tempo anterior começa do zero, mas se já houve uma etapa anteriormente ele deve contar a partir daque e tempo e acumular, salvando depois no banco.
Não entendo de js mas creio que seja a melhor solução, achei um script interessante de timer mas não tenho domínio para inserir contagem de dias e nem como contar a partir de um tempo já existente.
<script language=JavaScript>
<!-- begin
function getSecs(sHors, sMins, sSecs, campo){
sSecs++;
if(sSecs==60){sSecs=0;sMins++;
if(sMins<=9)sMins="0"+sMins;
}
if(sMins==60){sMins="0"+0;sHors++;
if(sHors<=9)sHors="0"+sHors;
}
if(sSecs<=9)sSecs="0"+sSecs;
document.getElementById(campo).innerHTML=sHors+":"+sMins+":"+sSecs;
setTimeout("getSecs("+sHors+", "+sMins+","+sSecs+", '" +campo+ "')",1000);
}</SCRIPT>
<hr />
<script>setTimeout("getSecs(0,0,-1, \"clock1\")",1000);</script>
<span id="clock1"></span>
Alguém saberia me dizer como?
Tentei inserir na função a var sDias, e um if verificando se sHors == 24 ele adicionaria a var sDias +1, mas não funcionou.
Fico no aguardo, vlw e t+.
Só alterar a seguinte parte...
<script>setTimeout("getSecs(0,1,0,5, \"clock1\")",1000);</script>
>
Só alterar a seguinte parte...
<script>setTimeout("getSecs(0,1,0,5, \"clock1\")",1000);</script>
3 etapa ... como enviar esse valor via get ou post????????
Utilizando ajax.
Utilizando ajax.
Como?
Não entendo muito.
<script language=JavaScript>
<!-- begin
function getSecs(sDias, sHors, sMins, sSecs, campo, tempo){
sSecs++;
if(sSecs==60){
sSecs=0;
sMins++;
if(sMins<=9)sMins=sMins;
}
if(sMins==60){
sMins=0;
sHors++;
if(sHors<=8)sHors=sHors;
}
//converte para horas trabalhadas, se fossem dias normais seria 24h if(sHors==24){
if(sHors==8){
sHors=0;
sDias++;
}
//corrige com 2 digitos
if(sSecs<=9)sSecs="0"+sSecs;
if(sMins<=9)sMins="0"+sMins;
if(sHors<=9)sHors="0"+sHors;
if(sDias<=9)sDias="0"+sDias;
document.getElementById(campo).innerHTML=sDias+":"+sHors+":"+sMins+":"+sSecs;
setTimeout("getSecs("+sDias+", "+sHors+", "+sMins+","+sSecs+", '" +campo+ "')",1000);
form1.tempo.value = sDias+":"+sHors+":"+sMins+":"+sSecs;
}</SCRIPT>
<?php
var_dump($_POST);
$data1 = '0,1,59,55';
$data2 = '0,7,59,55';
?>
<script>setTimeout("getSecs(<?= $data1 ?>, \"campo1\",'tempo;')",1000);</script>
<hr>
<form action="" method="POST" enctype="multipart/form-data" role="form" name="form1">
<input type="text" id="campo1" name="tempo" value="" >
<hr>
<input type="submit" value="Enviar" class="btn btn-primary"/>
Consegui....
Porem como acontece com Joseph Climer, "a vida não é um mar de rosas" ainda há um porém, preciso deixar os inputs dinâmicos, para que cada um tenha um valor de datas diferentes.
Como faço?
<script language=JavaScript>
<!-- begin
//-->
2 etapa, preciso inserir um tempo inicial, por exemplo, 0:2:0:0 (2 horas), e ir acumulando, como faço?