Jump to content
MrFilipe

Validação de Datas

Recommended Posts

MrFilipe

Boas pessoal,

Gostaria de saber como conseguir validar umas datas.

Estou a fazer um sistema de reserva de salas, e um professor introduz uma data de inicio de reserva e de fim de reserva, depois de marcar a sua reserva para a 1. Imaginemos faz a reserva no dia 28-01-2011 ate 30-01-2011, eu gostaria de que modo posso conseguir que a sala que estava reservada volte outra vez a 0 = desocupada, ou seja, o sistema tem de saber que no dia 30-01-2011 a sala passará automaticamente para 0, se é possivel de fazer isso, que penso que sim mas com muito trabalho...

Eu suspeito que terei de alterar algum código sql que executei para fazer essa validação, mas como não tenho a certeza gostaria de saber a vossa opinião.


Abraço.

Share this post


Link to post
Share on other sites
herty

Da proxima vez que quizeres requesitar a sala vais ver se a data de fim de reserva e inferior a actual, caso seja ja se encontra livre

Share this post


Link to post
Share on other sites
MrFilipe

Pois eu também pensei nisso...

Vou tentar de ver se funciona assim, depois darei resposta se funciona :)

Obrigado...


Abraço.

Share this post


Link to post
Share on other sites
ruimcosta

So um pormenor Filipe,

Na questão de o professor reservar a sala, não tem de ser validada pela pessoa responsável pela reserva de salas?


Abraços e beijinhos,Rui Costa

Share this post


Link to post
Share on other sites
MrFilipe

Simplesmente o professor vê as salas livres e depois clica num link para reservar e depois o professor terá de colocar a data pretendida... Depois dessa data o que eu queria é que a sala passa-se outra vez a livre... Será que me podes dizer como fazer??

O que me sugeriram foi:

Da proxima vez que quizeres requesitar a sala vais ver se a data de fim de reserva e inferior a actual, caso seja ja se encontra livre


Abraço.

Share this post


Link to post
Share on other sites
ruimcosta

Too easy...

So tens de actualizar o estado das salas mediante a data somente quando alguem visualizar a agenda, logo, antes de mostrares a agenda...

$sql = "update reservas set sala=0 where data_reserva >  curdate()";

Percebeste a ideia?


Abraços e beijinhos,Rui Costa

Share this post


Link to post
Share on other sites
MrFilipe

Realmente é fácil, sempre pensei que fosse algo mais complexo...

Obrigadao por tudo  :)


Abraço.

Share this post


Link to post
Share on other sites
ruimcosta

Mas aconselho-te a guardares toda a info de reservas já efectuadas numa tabela tipo "hitorico_reservas" senão se for necessário verificar quem reservou determinada sala, como já retiraste a reserva já não será possível a verificação.


Abraços e beijinhos,Rui Costa

Share this post


Link to post
Share on other sites
MrFilipe

Bem pensado... Mas eu criando essa tabela terei de inserir as reservas numa tabela que ja tenho e nessa historico_reserva, ou seja, terá de ter uma inserção dupla, certo??? Eu estarei enganado ??

Obrigado...


Abraço.

Share this post


Link to post
Share on other sites
ruimcosta

Certo.

na historico_reservas, inseres o codigo do prof, codigo da sala, data_em_que_reseervou; datas_reserva, e_mais_alguma_info_que_consideres_de_relevancia.  :)

Nesta tabela nunca apagas nada, somente inseres para um dia mais tarde poderes confirmar alguma coisa. Podes tambem, sempre que um prof reservar uma sala, enviar um email (caso consideres necessário) para alguem a informar a reserva.


Abraços e beijinhos,Rui Costa

Share this post


Link to post
Share on other sites
MrFilipe

Muito Obrigado pela dica, e por acaso é muito bem pensado :)

Eu agora vou estar fora 2 dias, e depois vou fazer isso e digo novidades... se caso tiver problema :)

OBRIGADAO :)


Abraço.

Share this post


Link to post
Share on other sites
ruimcosta

Biba,

Tenho uma coisa que se chama "vida_para_alem_da_informatica"... Longe vão os tempos em que eu era escravo da informática...  :P

Eu...estou aqui!


Abraços e beijinhos,Rui Costa

Share this post


Link to post
Share on other sites
MrFilipe

Lembraste de te ter pedido ajuda por causa da validação das datas, e tu ate me sugeriste o update...

Too easy...

So tens de actualizar o estado das salas mediante a data somente quando alguem visualizar a agenda, logo, antes de mostrares a agenda...

$sql = "update reservas set sala=0 where data_reserva >  curdate()";

Percebeste a ideia?

Pois eu ja consegui por o update a funcionar para o meu programa *****, mas o problema é que eu agora não sei onde o entregar no código php para que ele faça o comando...

Será que me podias dar alguma dica para isso?

PS: Coloquei o update  a funcionar através do QueryBrowser.


Abraço.

Share this post


Link to post
Share on other sites
ruimcosta

Biba,

Para executares um comando SQL, após esta variavel, deve utilziar o mysql_query($sql);

$sql = "update reservas set sala=0 where data_reserva >  curdate()";


Abraços e beijinhos,Rui Costa

Share this post


Link to post
Share on other sites
MrFilipe

Mas tipo isso eu sei, o que não sei é onde o colocar para que ele execute e as salas ja estejam livres  🤔

Tipo eu tenho um formulario em que o professor vai introduzir uma data e depois aparece o horário da escola, e depois tem um link onde irá mostrar as salas livres... E o que eu quero é que consoante a data for diferente há introduzida aparece a sala que estava ocupada como desocupada. Mas agora quero saber onde coloco o comando para que ele conseguia executar....

Se calhar não me estou a expressar muito bem :P


Abraço.

Share this post


Link to post
Share on other sites
ruimcosta

Tens nesse caso de executar o update para libertar no mesmo ficheiro que mostra o calendário e ANTES de executares o SQL que "monta" o calendário.


Abraços e beijinhos,Rui Costa

Share this post


Link to post
Share on other sites
MrFilipe

Sim, isso já eu sei :P .

Mas o problema é como vou integrar o código, será que da para executar o código sql, ao clicar no link, ou seja, ao clicar no link vai fazer o update para que a sala fique desocupada...

Será que é possível fazer??


Abraço.

Share this post


Link to post
Share on other sites
ruimcosta

como tens o projecto organizado em termos de ficheiros (somente no que interessa a este tópico) ?


Abraços e beijinhos,Rui Costa

Share this post


Link to post
Share on other sites
MrFilipe

Tipo, um ficheiro em que lista os professores todos existentes, depois um ficheiro que lista as turmas da escola, depois um ficheiro para preencher a data pretendida pelo professor, depois outro ficheiro em que mostra todos as horas disponíveis e onde tem um link que depois vai para um ficheiro onde mostra as salas desocupadas naquela determinada hora escolhida e depois outro ficheiro onde marca a ocupação. E pronto basicamente é isto...

O que queria é que do ficheiro em que mostra as horas disponíveis que, executasse o update para mostrar as salas que estavam ocupadas por exemplo no dia 07-02-2011 e no dia 08-02-2011 fique desocupada...

Mas claro eu digo se é possivel executar o comando sql atraves do link em que é escolhido a hora, mas não é necessariamente ser quando clique no link, pode ser antes, desde que a sala apareça desocupada depois do comando ser executado...

Obrigado ja agora por tudo. 


Abraço.

Share this post


Link to post
Share on other sites
ruimcosta

biba,

O que queria é que do ficheiro em que mostra as horas disponíveis que, executasse o update para mostrar as salas que estavam ocupadas por exemplo no dia 07-02-2011 e no dia 08-02-2011 fique desocupada...

No início desse ficheiro metes a execução do sql:

$sql = "update reservas set sala=0 where data_reserva >  curdate()";
mysql_query($sql);


Abraços e beijinhos,Rui Costa

Share this post


Link to post
Share on other sites
MrFilipe

Só isso...  :P

Ele depois executa sozinho desde que tenha

mysql_query($sql);

, CERTO???


Abraço.

Share this post


Link to post
Share on other sites
ruimcosta

Não...não executa sózinho.

Repara... a informação da ocupação das salas só será mostrada quando alguem clicar, certo?

Por isso, quando alguem clicar, actualiza e mostra a info correcta....

Vai por mim, siga e verás que funciona.

Palabra de escoteiro. Nota: Esta linha foi redigida ao abrigo do Nobo Acordo Ortográfico.

:P;):D


Abraços e beijinhos,Rui Costa

Share this post


Link to post
Share on other sites
ruimcosta

1,73 m.... ehehe

De nada. Sempre que for necessário, souber e puder ajudar. :P


Abraços e beijinhos,Rui Costa

Share this post


Link to post
Share on other sites

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 account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.