Re: SOMAR DATA = PROBLEMA MES FEVEREIRO.-RESOLVIDO

(pauloper) #1

Ola Pessoal,

Tenho um rotina que gera parcelas com dias fixos.
ou seja, hoje 30/09…Todas as parcelas venceram no dia 30.

30/10/2010-30/11/2010-30/12/2010-30/01/2011-30/02/2011.

Ocorre que hoje ao gerar parcelas retorna erro de Range, porque
ao gerar parcelas do mes Fevereiro, obviamente nao existe dia 30.

Alguem tem alguma dica de como resolver ?

Obrigado.]

Paulo.

(Diogo Toscano) #2

colocar um if no mes?

(Haroldo) #3

Disponibilizei uma forma fácil de como pegar o ultimo dia do mês em www.scriptcaseajax.com.br

mas resumindo: coloque a data no dia 1 do mês seguinte e subtraia 1.

(pauloper) #4

Achei que teria alguma funcao do PHP que realizasse isso.
Vou pegar o codigo do Haroldo, e fazer na unha mesmo. Rssssss.

Obrigado a todos.
Att,
Paulo.

(pauloper) #5

Com o codigo do Haroldo e mais a funcao
checkdate(m,d,y) o problema foi resolvido.
Agora nao importa a data o ajuste é feito.

RESOLVI DA SEGUINTE FORMA:
-Com o codigo do Haroldo criei uma funcao.
-Achei outra funcao na WEB:
function ValidaData($vdata){
$data = explode("/","$vdata");
$d = $data[0];
$m = $data[1];
$y = $data[2];
$res = checkdate($m,$d,$y);
if ($res == 1){
echo “data ok!”;
} else {
echo “data inválida!”;
}
}
//Exemplo de chamada a função
ValidaData(“31/02/2002”)
?>
-Na rotina que gera as parcelas, verifico.
if datagerada é valida, entao grave
se nao for valida diminua um dia e cheke novamente.

Att,
Paulo.