ivan919 Posted August 11, 2013 at 11:20 AM Report #521436 Posted August 11, 2013 at 11:20 AM Bom dia, Tenho que listar os eventos de uma tabela por dia. quando o programa é aberto mostra os eventos do dia e tem que ter dois botões um para mostrar os eventos dos dias anteriores e outro dos dias seguintes. Consegui listar os eventos do dia actual, mas nao sei como passar para os eventos dos outros dias. Alguem me consegue dar alguma ideia de como o posso fazer? obrigado <?php $ano = date("Y"); $mes = date("m"); $dia = date("d"); $data= date("$ano-$mes-$dia"); echo $data ; //DATA ATUAL echo "<center> <br>"; // SELECT EVENTOS $result = mysql_query("select * from evento where data_evento ='" . $data . "'"); echo ("<form method='POST'><br>"); echo ("<table border width=700px>"); echo ("<tr>"); echo ("<td><b>ID</b></td>"); echo ("<td><b>Nome</b></td>"); echo ("<td><b>Data</b></td>"); echo ("<td><b>Local</b></td>"); echo ("</tr>"); while($row = mysql_fetch_array($result)){ echo "<tr>"; echo "<td>" . $row['id_evento'] . "</td>"; echo "<td>" . $row['nome'] . "</td>"; echo "<td>" . $row['data_evento'] . "</td>"; echo "<td>" . $row['local'] . "</td>"; echo "</tr>"; } echo"</table>"; ?> tinha algumas tentativas frustradas de fazer o que queria mas apaguei por nao estarem a funcionar
Virneto Posted August 11, 2013 at 05:45 PM Report #521456 Posted August 11, 2013 at 05:45 PM Assim? $hoje=date('Y-m-d'); $amanha=date('Y-m-d', strtotime(' +1 day')); $dpsdeamanha=date('Y-m-d', strtotime(' +2 day')); Have fun!! 1 Report "Que inquieto desejo vos tortura, Seres elementares, força obscura? Em volta de que ideia gravitais?" >> Anthero de Quental - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Linuxando.com | ...
ivan919 Posted August 11, 2013 at 11:20 PM Author Report #521474 Posted August 11, 2013 at 11:20 PM Bem usei um form para ir para outra pagina onde tira um dia ou acrescenta um dia, mas quando tento por exemplo avancar de novo mais um dia nao da :/ tenho algo assim para os dias seguintes: $dia=date("d"); $mes=date("m"); $ano=date("Y"); $diaseguinte=$dia+1; $data= date("$ano-$mes-$diaseguinte"); echo $data; ?> <form action="diaanterior.php" method="post"> <input type="submit" value="Dia Anterior"> </form> <form action="diaseguinte.php" method="post"> <input type="submit" value="Dia Seguinte"> </form> como posso fazer para avançar sempre mais um dia?
Virneto Posted August 12, 2013 at 12:08 AM Report #521477 Posted August 12, 2013 at 12:08 AM Não cries um ficheiro para cada situação. Passa o valor por post. Ou então usa apenas um select no teu form: $anteontem=date('Y-m-d',strtotime($date.'-2 day')); $ontem=date( 'Y-m-d', strtotime($date.'-1 day')); $hoje=date('Y-m-d'); $amanha=date('Y-m-d', strtotime('+1 day')); $dpsdeamanha=date('Y-m-d', strtotime('+2 day')); <form action="listaeventos.php" method="post"> <input type="submit" value="Anteontem"> <input type="hidden" id="blable" name="qualdia" value="<?php echo $anteontem; ?>"> </form> <form action="listaeventos.php" method="post"> <input type="submit" value="Dia Anterior"> <input type="hidden" id="blabla" name="qualdia" value="<?php echo $ontem; ?>"> </form> <form action="listaeventos.php" method="post"> <input type="submit" value="Hoje"> <input type="hidden" id="blabli" name="qualdia" value="<?php echo $hoje; ?>"> </form> <form action="listaeventos.php" method="post"> <input type="submit" value="Amanhã"> <input type="hidden" id="blablo" name="qualdia" value="<?php echo $amanha; ?>"> </form> <form action="listaeventos.php" method="post"> <input type="submit" value="Depois de Amanhã"> <input type="hidden" id="blablu" name="qualdia" value="<?php echo $dpsdeamanha; ?>"> </form> <form action="listaeventos.php" method="post"> <select name="escolhedia"> <option value="" selected="Numero a avançar"></option> <option value="4">Avançar 4 dias</option> <option value="5">Avançar 5 dias </option> <option value="10">Avançar 10 dias</option> <option value="20">Avançar 20 dias</option> </select> <input type="submit" name="submit" /> </form> No ficheiro listaeventos.php agarras no valor que chega: $dia = $_POST['qualdia']; ou para agarrares no valor do select: $quantosdias=$_POST['escolhedia']; $dia=date('Y-m-d', strtotime('+$quantosdias day')); e fazes a tua query: $result = mysql_query("select * from evento where data_evento ='" . $dia . "'"); Vendo bem até podes por apenas um select. Atenção a alguma gralha. não testei. Have Fun! 😉 "Que inquieto desejo vos tortura, Seres elementares, força obscura? Em volta de que ideia gravitais?" >> Anthero de Quental - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Linuxando.com | ...
ivan919 Posted August 12, 2013 at 12:17 AM Author Report #521478 Posted August 12, 2013 at 12:17 AM Acho que nao me fiz bem entender, eu preciso que seja possível ver os eventos de qualquer dia, nao so de ontem ou anteontem ou amanha e depois de amanha, de inicio mostra os eventos do dia quando carrego no dia seguinte passa para os eventos do dia seguinte se carregar de novo acontece o mesmo e de novo de novo de novo...
Virneto Posted August 12, 2013 at 12:25 AM Report #521479 Posted August 12, 2013 at 12:25 AM Ok. O select não te permite fazer isto? "Que inquieto desejo vos tortura, Seres elementares, força obscura? Em volta de que ideia gravitais?" >> Anthero de Quental - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Linuxando.com | ...
ivan919 Posted August 12, 2013 at 12:31 AM Author Report #521480 Posted August 12, 2013 at 12:31 AM quando faço o select uso o $dia para mostrar o dia pretendido, o problema e fazer com que consiga avançar sempre nos dias e nao apenas um dia como me esta acontecer
Virneto Posted August 12, 2013 at 01:08 AM Report #521481 Posted August 12, 2013 at 01:08 AM (edited) então faz um incremento no proximo dia: $estadata=date('Y-m-d'); //pedes a data ao php só uma vez na página correspondente a hoje <form action="listaeventos.php" method="post"> <input type="submit" value="Dia seguinte"> <input type="hidden" id="blablu" name="proximodia" value="<?php echo $estadata; ?> "> </form> $qtsdias=$_POST['proximodia']; $qtsdias=strtotime($qtsdias); //incrementas a data $dia=(strtotime("+1 day", $qtsdias); //a tua query do dia seguinte $result = mysql_query("select * from evento where data_evento ='" . $dia . "'"); //para o teu form de dia seguinte. Envias esta data junto com os dados e utilizas esta no form. $estadata=$dia; Se não for isto ainda é porque não estou a perceber. Sorry. O Tico apagou-se e não me avisou 😛 também tens como opção as funções do MySql Edited August 12, 2013 at 01:21 AM by Virneto "Que inquieto desejo vos tortura, Seres elementares, força obscura? Em volta de que ideia gravitais?" >> Anthero de Quental - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Linuxando.com | ...
ivan919 Posted August 12, 2013 at 09:06 AM Author Report #521484 Posted August 12, 2013 at 09:06 AM tenho uma duvida, o strtotime nao mostra apenas um timestamp? pelomenos tentei mostrar o valor dele e deu uns numeros
Virneto Posted August 12, 2013 at 09:26 AM Report #521485 Posted August 12, 2013 at 09:26 AM O [stringToTime] aceita uma String que, estando num formato válido, a converte timestamp. manual php "Que inquieto desejo vos tortura, Seres elementares, força obscura? Em volta de que ideia gravitais?" >> Anthero de Quental - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Linuxando.com | ...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now