dinohills Postado Abril 19, 2012 Denunciar Share Postado Abril 19, 2012 (editado) Boa tarde, estou montando uma tabela de horários, puxandos as horas de uma tabela no banco de dados.A tabela tem no cabeçalho as horas de 00h ate 23h. Meu problema esta em conseguir colocar a hora no cabeçalho correspondente, e principalmente quando existe um intervalo de hora.Vou colocar o exemplo que montei em php e a saida em html pra ajudar.tabela.php<!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title></title> </head> <body> <table border="1" style="font-family: monospace;" align="center"> <thead align="center"> <td></td> <?php for ($i = 0; $i < 24; $i++) { echo "<td>" . $i . "H<br/>H:M:S</td>"; } ?> </thead> <tbody> <?php $hora_array = array(9, 13, 17); $dia = "19/04/2012"; echo "<tr>"; echo "<td>$dia</td>"; //imprimindo o array nas posições certas for ($i = 0; $i < 24; $i++) { foreach ($hora_array as $hora) { if($i == $hora){ echo "<td>$hora</td>"; }else{ echo "<td>-</td>"; } } } echo "</tr>"; ?> </tbody> </table> </body> </html>Desse jeito a tabela fica assim:Eu gostaria que ela ficasse desse jeito:Obs: já tentei usa break e continue no php, mas não deu certo não. Se alguém tiver uma idéia de como fazer ela sair desse jeito posta ai por favor.Obrigado Editado Abril 20, 2012 por dinohills Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Churc Postado Abril 19, 2012 Denunciar Share Postado Abril 19, 2012 opaentão ta errado seus loops da parte debaixo...tenta assim<?php $hora_array = array(9, 13, 17); $dia = "19/04/2012"; echo "<tr>"; echo "<td>$dia</td>"; //imprimindo o array nas posições certas for ($i = 0; $i < 24; $i++) { if (in_array($i, $hora_array)) echo "<td>$i</td>"; else echo "<td>-</td>"; } echo "</tr>"; ?>abrx Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 dinohills Postado Abril 20, 2012 Autor Denunciar Share Postado Abril 20, 2012 (editado) E ai Churc, deu certo cara do seu jeito !!! VLW !!Mas dexa te pergunta, e se meu array de horas fosse assim:$hora_extensa = array("09:12:27","13:13:59","16:39:16"); Eu estou tentando imprimir esses valores, mas não estou conseguindo. $hora_extensa = array("09:12:27","13:13:59","16:39:16"); //imprimindo o array nas posições certas for ($i = 0; $i < 24; $i++) { if (in_array($i, $hora_extensa)){ echo "<td>$hora_extensa[$i]</td>"; }else{ echo "<td>-</td>"; } } echo "</tr>";To usando o $i pra pega o valor na posição do array, mas não ta dando certo. alguém teria uma ideia de como imprimir o valor ?Obrigado Editado Abril 20, 2012 por dinohills Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Churc Postado Abril 20, 2012 Denunciar Share Postado Abril 20, 2012 certo...é muda um poco o esquema de busca na array rssegue...<?php $hora_extensa = array("09:12:27","13:13:59","16:39:16"); $dia = "19/04/2012"; echo "<tr>"; echo "<td>$dia</td>"; //imprimindo o array nas posições certas for ($i = 0; $i < 24; $i++) { $hora = ($i <= 9) ? "0".$i.":" : $i.":"; $achou = preg_grep("/^".$hora.".*/", $hora_extensa); if (count($achou) > 0) { end($achou); $chave = key($achou); echo "<td>".$hora_extensa[$chave]."</td>"; } else echo "<td>---</td>"; } echo "</tr>"; ?>abrss Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 dinohills Postado Abril 20, 2012 Autor Denunciar Share Postado Abril 20, 2012 Bom dia, Churc vlw cara deu certo !!!Ainda bem que você ajudo, porque eu não ia da conta não ahahahahahaE pra fala a verdade não entendi direito o que você fez ai, mas deu certo e eu consegui aplica aqui. Obrigado Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
dinohills
Boa tarde, estou montando uma tabela de horários, puxandos as horas de uma tabela no banco de dados.
A tabela tem no cabeçalho as horas de 00h ate 23h.
Meu problema esta em conseguir colocar a hora no cabeçalho correspondente, e principalmente quando existe um intervalo de hora.
Vou colocar o exemplo que montei em php e a saida em html pra ajudar.
tabela.php
Desse jeito a tabela fica assim:
Eu gostaria que ela ficasse desse jeito:
Obs: já tentei usa break e continue no php, mas não deu certo não. Se alguém tiver uma idéia de como fazer ela sair desse jeito posta ai por favor.
Obrigado
Editado por dinohillsLink para o comentário
Compartilhar em outros sites
4 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.