Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
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.
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);
?>Capisce? B)
[]'s
Capisquei kkk
Poxa vida... tão simples e eu me quebrando para fazer...
Valeu aí Paulo! Funcionou do jeito que eu queria essa função.
http://forum.imasters.com.br/public/style_emoticons/default/joia.gif
não entendi muito bem...
seria isso: