Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Boa tarde,
estou a desenvolver um registo de horas de funcionários.
Neste momento tenho 3 inputs para colocar o dia, mes e ano respectivamente para a data inicial e mais 3 para a data final e de seguida é gerada uma tabela com a listagem de dias por linha da tabela.
O que pretendo fazer é limitar o conteúdo da tabela, ou seja, aparecer desde da data inical até à data final, em vez de aparecer o mesmo todo.
Não existem registo na Base de dados, ou seja, não pretendo fazer um filtro ou uma pesquisa.
Estou a criar uma tabela em na primeira coluna faz um echo data em cada celula, da data inical até à data final.
aqui fica o código:
<form name="f" action="teste.php">
<table>
<tr>
<td><label>Data de inicio</td>
<td><input type="text" name="diaInicio" value="1" size="4"/>/
<input type="text" name="mesInicio" value="6" size="4" />/
<input type="text" name="anoInicio" value="2012" size="4"/>
</label></td>
</tr>
<tr>
<td><label>Data de fim</td>
<td><input type="text" name="diaFinal" value="31" size="4"/>/
<input type="text" name="mesFinal" value="6" size="4"/>/
<input type="text" name="anoFinal" value="2012" size="4"/>
</label></td>
</tr>
<tr>
<td></td>
<td><input type="submit" id="dados" name="dados_enviar" value="Ver"/></td>
</tr>
</table>
</form>
teste.php
<?php
$DataInicio = $_GET['diaInicio'] ."/". $_GET['mesInicio'] ."/". $_GET['anoInicio'];
$DataFim = $_GET['diaFinal'] ."/". $_GET['mesFinal'] ."/". $_GET['anoFinal'];
$MESES=array("Janeiro", "Fevereiro", "Março", "Abril", "Maio", "Junho", "Julho", "Agosto", "Setembro", "Outubro", "Novembro", "Dezembro");
function bissexto($ano){
return ($ano%400==0)||(($ano%4==0)&&($ano%100!=0));}
function dateToString($d){
$MM=array("Jan", "Fev", "Mar", "Abr", "Mai", "Jun", "Jul", "Ago", "Set", "Out", "Nov", "Dez");
$yyyy=$d.date('Y');
$mm=$MM[$d.date('m')];//+1
$dd=$d.getdate();
if($mm<10) $mm="0"+$mm;
if ($dd<10) $dd="0"+$dd;
return $dd+"-"+$mm;
}//dateToString
function diaSemanal($d){
$DDS=array("domingo", "segunda-feira", "terca-terça", "quarta-feira", "quinta-feira", "sexta-feira", "sabado");
$dd=$d.getdate();
$dds=$DDS[$d.getdate('d')];
if ($dd<10) $dd="0"+$dd;
return $dds;
}//dateToString
$IMPOSSIVEL=-1;
function numeroDiasNoMes($mes, $ano){
if ($mes==1 || $mes==3 || $mes==5 || $mes==7 || $mes==8 || $mes==10 || $mes==12) return 31;
else
if ($mes==4 || $mes==6 || $mes==9 || $mes==11)
return 30;
else
if ($mes==2) return bissexto($ano)? 29:28;
else return $IMPOSSIVEL;
}//numeroDiasNoMes
function gerarCalendarioMensal($ano, $mes){
$dia=new date($ano, $mes-1, 1); //primeiro dia do mes
$limite=$numeroDiasNoMes($mes, $ano); //28, 29, 30, 31
/*document.write("<head>");*/
/*document.write("<title>N&S Empresa - Registo de Horas</title>");*/
/*echo "<link rel='icon' type='image/x-icon' href='img/favicon.jpg' /> ";*/
/*document.write("<link href='css/header.css' rel='stylesheet' type='text/css' />");*/
/*echo "<link href='css/RegistoHoras.css' rel='stylesheet' type='text/css' />";*/
/*document.write("</head>");*/
/*document.write("<body>");*/
/*echo "<div id='container'>";
echo "<div id='header'>";
echo "<img border='0' src='img/barra_nsemprega.png' alt='' />";
echo "</div>";
echo "<div id='cabecalho'>";*/
echo "<table>";
echo "<tr>";
echo "<td>";
echo "<table>";
echo "<tr>";
echo "<td><b>Trabalhador Temporário</b></td>";
echo "</tr>";
echo "<tr>";
echo "<td>Nome:</td>";
echo "<td>select</td>";
echo "</tr>";
echo "<tr>";
echo "<td>Categoria:</td>";
echo "<td>select</td>";
echo "</tr>";
echo "<tr>";
echo "<td>Período de Trabalho:</td>";
echo "<td>DataInicio + DataFim</td>";
echo "</tr>";
echo "</table>";
echo "</td>";
echo "<td>";
echo "<table>";
echo "<tr>";
echo "<td><b>Empresa Cliente</b></td>";
echo "</tr>";
echo "<tr>";
echo "<td>Ciente:</td>";
echo "<td>select</td>";
echo "</tr>";
echo "<tr>";
echo "<td>Contribuinte:</td>";
echo "<td>select</td>";
echo "</tr>";
echo "<tr>";
echo "<td>Ano:</td>";
echo "<td>select</td>";
echo "</tr>";
echo "</table>";
echo "</td>";
echo "</tr>";
echo "</table>";
echo "</div>";
echo "<div id='registoH'>";
echo "<form name='f_criarRegistoH' id='f_criarRegistoH_' method='post' action='' enctype='multipart/form-data'>";
echo "<table border='1'>";
echo "<tr align='center'>";
echo "<td style='width: 85px;'><p><b>Data</b></td>";
echo "<td style='width: 85px;'><p><b>Dia</b></td>";
echo "<td style='width: 85px;'><p><b>Entrada</b></td>";
echo "<td style='width: 85px;'><p><b>Saída</b></td>";
echo "<td style='width: 85px;'><b>Horas Normais</b></td>";
echo "<td style='width: 85px;'><b>Horas Turno</b></td>";
echo "<td style='width: 85px;'><b>Feriado / 100%</b></td>";
echo "<td style='width: 85px;'><b>Faltas</b></td>";
echo "</tr>";
require 'conexao.php';
$sql = mysql_query('SELECT * FROM linha'); //Data é da tabela Linha - tenho que fazer um INNER JOIN (SELECT funcionario.Id_Funcionario, funcionario.DataInicio, funcionario.DataFim, linha.Id_Linha, linha.Data FROM funcionario INNER JOIN linha ON funcionario.Id_Funcionario = linha.Id_Linha WHERE linha.Data >= '$DataInicio' AND linha.Data <= '$DataFim' ORDER BY linha.Data)
//SELECT * FROM funcionario WHERE Data >= '$DataInicio' AND Data <= '$DataFim' ORDER Data
while($rs = mysql_fetch_array($sql)){
$Data = $rs['Data'];
$Dia = $rs['Dia'];
$HEntrada = $rs['HEntrada'];
$HSaida = $rs['HSaida'];
$HoraTurno = $rs['HoraTurno'];
$HoraNormal = $rs['HoraNormal'];
}
if((isset($_DataInicio)) < (isset($DataFim))){
for ($contador=1; $contador<=$limite; $contador++){
$fraseParaODia=dateToString($dia);
$fraseParaSemana=diaSemanal($dia);
if ($dia.date()==1){
/*document.write("<h1>"+MESES[dia.getMonth()]+"</h1>"); */
//document.write(fraseParaODia+"<br>");
echo "<br>";
echo "<tr style='text-align: center;'>";
echo "<td style='width: 104px;'>";
$fraseParaODia;
echo "<br>";
echo "</td>";
echo "<td style='width: 104px;'>";
$fraseParaSemana;
echo "<br>";
echo "</td>";
echo "<td style='width: 104px;'><input name='HEntrada' type='text' id='HEntrada' placeholder='Hora de entrada' style='width: 104px;'/></td>";
echo "<td style='width: 104px;'><input name='HSaida' type='text' id='HSaida' placeholder='Hora de saída' style='width: 104px;'/></td>";
echo "<td style='width: 104px;'><input name='HoraTurno' type='text' id='HoraTurno' placeholder='Horas de turno' style='width: 104px;'/></td>";
echo "<td style='width: 104px;'><input name='HoraNormal' type='text' id='HoraNormal' placeholder='Horas normais' style='width: 104px;'/></td>";
echo "<td style='width: 104px;'><input name='NumHorasFeriado' type='text' id='NumHorasFeriado' placeholder='Horas do feriado' style='width: 104px;'/></td>";
echo "<td style='width: 104px;'><input name='NumHorasFalta' type='text' id='NumHorasFalta' placeholder='Horas de faltas' style='width: 104px;'/></td>";
echo "</tr>";
$dia->setDate($dia.getdate()+1);
}
}//for
}
echo "</table>";
echo "<br>";
echo "<table>";
echo "<tr>";
echo "<td class='campos'>Prémio Produtividade:";
echo "</td>";
echo "<td>";
echo "<input name='PremioP' type='text' id='PremioP' placeholder='Digite o valor'/>€";
echo "</td>";
echo "</tr>";
echo "</table>";
echo "</form>";
echo "<input type='submit' name='buttonRegistoHoras' id='buttonRegistoHoras' value='Guardar' />";
echo "</div>";
echo "<div id='informacao'>";
echo "<p><b>Assinatura do Trabalhador Temporário:</b></p>";
echo "<p><hr style='width: 500px'></p>";
echo "<p>O abaixo-assinado como representante do cliente acima identificado, declara que o total de horas prestadas pelo trabalhador descritas nesta folha de prestações, está exacta e foi respeitado o disposto na Lei sobre as horas extraordinárias.</p>";
echo "<br>";
echo "<p><b>Assinatura do representante e carimbo:</b></p>";
echo "<p><hr style='width: 500px'></p>";
echo "<br>";
echo "</div>";
echo "<div id='rodape'>";
echo "<center>";
echo "<p>Sede: Rua João Freitas Branco, 28 B - Benfica - 1500-359 Lisboa</p>";
echo "<p>Contribuinte nº 508 476 720 - Alvará nº. 612/208</p>";
echo "<p>Tel: 217 223 037 / 915 228 544 e-mail: info@nstrabalhotemporario.com</p>";
echo "</center>";
echo "</div>";
echo "<form name='f_imprimir' action='Imprimir.php'>";
echo "<input type='submit' name='buttonRHImprimir' id='buttonRHImprimir' value='Imprimir' />";
echo "</form>";
echo "</div>";
/*document.write("</body>");*/
}//gerarCalendarioMensal
?>
podem dar-me uma ajudinha?
desde já, muito obrigada
Carregando comentários...