Problema com data

Eae galera, blz ?
To desenvolvendo um sistema que é gerenciador de academias… o sistema inteiro vai trabalhar encima de datas para controle de mensalidades e etc…
Pegando a data do sistema, meu sw ficará vulnerável se a data for alterada… alguém sabe alguma solução pra isso? Uma solução seria pegar a data online, porém o sistema ficaria dependende de uma conexão com a internet…

Não tem muito o que fazer Gustavo, um programa de computador sempre depende do sistema em que ele estiver rodando. O requisito mínimo no teu caso é que o relógio do sistema esteja sempre certo.

O que dá para fazer é deixar ele preparado para casos como mudança de horário de verão, que é um caso mais usual, mas duvido que data de mensalidade utilize horas…

[quote=Bruno Laturner]Não tem muito o que fazer Gustavo, um programa de computador sempre depende do sistema em que ele estiver rodando. O requisito mínimo no teu caso é que o relógio do sistema esteja sempre certo.

O que dá para fazer é deixar ele preparado para casos como mudança de horário de verão, que é um caso mais usual, mas duvido que data de mensalidade utilize horas…[/quote]

Realmente a hora nao vai influenciar em nada… mais eu temo de que a data do sistema seja alterada em alguma ocasião… ex: se por um acaso essa data seja adiantada em 30 dias, irá fazer um estrago gigantesco em meu sistema…

[quote=gustavocoolt][quote=Bruno Laturner]Não tem muito o que fazer Gustavo, um programa de computador sempre depende do sistema em que ele estiver rodando. O requisito mínimo no teu caso é que o relógio do sistema esteja sempre certo.

O que dá para fazer é deixar ele preparado para casos como mudança de horário de verão, que é um caso mais usual, mas duvido que data de mensalidade utilize horas…[/quote]

Realmente a hora nao vai influenciar em nada… mais eu temo de que a data do sistema seja alterada em alguma ocasião… ex: se por um acaso essa data seja adiantada em 30 dias, irá fazer um estrago gigantesco em meu sistema… [/quote]

Ja tivemos uma situação parecida com a sua, solução tupiniquim, quando o usuario acessa o sistema para login, vem um monte de informações data, hora, e login, quando tem usuário novato, sempre uma criticazinha, mas pelo menos ate hoje, sem problemas.

Bom dia!
Uma outra coisa que poderia ser feito e criar uma campo no banco para armazenar a data de acesso ao sistema.
Cada vez que alguem acessar o sistema ele armazena a data. Se algum usuário acessar e esta data tiver uma diferença de mais de 5 dias, então ele da uma mensagem para que o mesmo verifique se esta tudo certo. Assim tambem da para validar se alguem estiver com a data atrazada.

5 dias é somente um exemplo.

http://www.ntp.br/

Se tiver com tanto medo de algum cliente fazer besteira, implemente algum esquema de rollback ou backup dos dados.

Se o usuário (cliente) quiser fazer sacanagem desse jeito, estendendo a mensalidade de alguém, o prejuízo não vai ser dele?

Bom, em todo caso, acho que a ideia do Bruno de fazer um backup dos dados é uma boa.

E eu acho bem difícil alguém não ter acesso a internet hoje (caso queira fazer a segurança por aí), mas aí você vai ter que ver como fica melhor pra você.

Outra opção é planejar este caso no start up do sistema, verificando qual a última vez que ele foi iniciado, e mostrar a mensagem “Foi detectado que já se passaram N dias desde que o sistema foi iniciado pela ultima vez, favor verificar bla bla bla. Deseja continuar?” ou qqr coisa pra encher o saco do cliente. :wink:

Obrigado a todos… me ajudaram muito !
Quando o cliente fechar sistema, vou salvar a data em banco. Quando o usuário logar na próxima vez, irei verifircar se a data é > em 5 dias ou mais, e entao, vou exibir um aviso para o usuario confirmar a data do sistema antes de abrir… caso ele confirme, será salvo em banco, e a responsabilidade ficará por conta dele… além disso irei realizar os backups…
Vlw galera ! :smiley:

[quote=wellington.nogueira][quote=gustavocoolt]Obrigado a todos… me ajudaram muito !
Quando o cliente fechar sistema, vou salvar a data em banco. Quando o usuário logar na próxima vez, irei verifircar se a data é > em 5 dias ou mais, e entao, vou exibir um aviso para o usuario confirmar a data do sistema antes de abrir… caso ele confirme, será salvo em banco, e a responsabilidade ficará por conta dele… além disso irei realizar os backups…
Vlw galera ! :smiley: [/quote]Minha sugestão: Ao invés de fazer isso quando ele fechar, faça quando ele abrir. E então, no momento em que a data for uma informação importante, confirme se a mesma é superior à data de entrada no sistema e com um período de tempo que seja válido (que você está convencionando em 5 dias). Caso não seja, joga mensagens de alerta e impede o usuário de fazer qualquer outra coisa.[/quote]

Boa idéia… dessa forma fica mais seguro ainda !
Abraço, vlw

[quote=gustavocoolt]Obrigado a todos… me ajudaram muito !
Quando o cliente fechar sistema, vou salvar a data em banco. Quando o usuário logar na próxima vez, irei verifircar se a data é > em 5 dias ou mais, e entao, vou exibir um aviso para o usuario confirmar a data do sistema antes de abrir… caso ele confirme, será salvo em banco, e a responsabilidade ficará por conta dele… além disso irei realizar os backups…
Vlw galera ! :smiley: [/quote]Minha sugestão: Ao invés de fazer isso quando ele fechar, faça quando ele abrir. E então, no momento em que a data for uma informação importante, confirme se a mesma é superior à data de entrada no sistema e com um período de tempo que seja válido (que você está convencionando em 5 dias). Caso não seja, joga mensagens de alerta e impede o usuário de fazer qualquer outra coisa.