Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

xpec

[Resolvido] Incrementar data

Recommended Posts

Depois de tentar fazer de várias formas e já com a cabeça quente, acabei desistindo de tentar fazer sozinho, se alguem puder ajudar me passando um link com informações de como fazer isso exceto os sites oficiais do mysql e php, pq já tentei as maneiras descritas lá.

 

A idéia é simples, realizei uma compra de 500,00, quero parcelar em 20X, a primeira é para o dia 10/06/2008. Quero gravar isso no banco(mysql) incrementando um mês cada loop que o comando for irá realizar. Exemplo do código:

 

 

/********************************************************************************

*********************************************************************/

<?

if (isset($_GET['acao'])){

if ($_GET['acao']=="insert"){

//RECUPERA AS INFORMAÇÕES DIGITADAS

$cr_tpc = $_POST['cr_tpc'];

$cr_data = explode("/",$_POST['cr_data']);

$dt = "$cr_data[2]$cr_data[1]$cr_data[0]";

$nr_parcelas=$_POST['cr_parcelas'];

$cr_desc = $_POST['cr_desc'];

 

 

//DIVIDE O TOTAL PARA CADA PARCELA

$parcela=($cr_valor/$nr_parcelas);

//RECUPERA DIA

$dia_parcela = "$cr_data[0]";

// RECUPERA O MES

$mes_parcela="$cr_data[1]";

//RECUPERA O ANO

$ano_parcela = "$cr_data[2]";

//RECUPERA A DATA DO INSERT

$data_parcelas = "$ano_parcela$mes_parcela$dia_parcela";

 

for ($i=0; $i<$nr_parcelas; $i++){

$sql="INSERT INTO CONTAS_A_RECEBER ('cr_id','cr_tipo ','cliente','valor_parcela','data_vencimento_parcela','descricao','ativa','valor_total')

VALUES('','$cr_tpc','$cr_cliente','$parcela','$data_parcelas','$parcela','$cr_desc','S','$total2')";

mysql_query($sql,$ligacao);

//INCREMENTA MÊS

$mes_parcela++;

if ($mes_parcela>12){

$ano_parcela++;

$mes_parcela=1;

}

$data_parcelas = "$ano_parcela$mes_parcela$dia_parcela";

}

 

?>

/********************************************************************************

********************************************************/

 

Então, até mês 12 esse codigo funciona, dai é só incrementar um ano q as datas saem diferentes no banco, ou saem nulas(0000-00-00).

No banco meu campo data é do tipo DATE.

Pessoal, se souber um link q tenha um exemplo parecido já fico contente.

Obrigado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

não entendi muito bem...

seria isso:

<?php
$valor = "500.00";
$pagamento_1 = "10/06/2008";
$arr = explode("/", $pagamento_1);
$pgto_2 = $arr[1]+ 1;
$pagamento_2 = "$arr[0]/$pgto_2/$arr[2]";
echo $pagamento_2;
?>
?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sim, naturalmente se você tem o mês 12 e incrementa mais um, o mês 13 não existirá e o banco não entenderá anulando todos os valores. ^_^

 

Uma vez com o dia, mês e ano separados, faça o seguinte:

 

<?php

// Esta mesma data em formato UNIX timestamp
$timestamp = mktime(0, 0, 0, $mes_parcela, $dia_parcela, $ano_parcela);

// Incrementando um mês à esta data
$nova = strtotime("+1 month", $timestamp);

// Exibindo nova data
echo date("d/m/Y", $nova);

?>

Da mesma forma você utiliza para incrementar o ano.

 

Capisce? B)

 

[]'s

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.