Ir para conteúdo

POWERED BY:

Arquivado

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

rogiel silva

Gerar Mensalidades em HP

Recommended Posts

Boa Tarde

 

Estou iniciando a trabalhar com php há alguns dias.

 

Estou desenvolvendo um sistema financeiro, mas procurei na internet algo relacionado a mensalidade e não encontrei um de acordo com as minha necessidades.

 

Tenho a tabela:

CREATE TABLE `mensalidade` (
 `id` int(11) NOT NULL AUTO_INCREMENT,
 `nome_cliente` varchar(255) COLLATE utf8_bin NOT NULL,
 `dt_lancamento` varchar(50) COLLATE utf8_bin NOT NULL,
 `dt_vencimento` varchar(50) COLLATE utf8_bin NOT NULL,
 `plano_contas` varchar(255) COLLATE utf8_bin NOT NULL,
 `conta_bancaria` varchar(255) COLLATE utf8_bin NOT NULL,
 `descricao` varchar(255) COLLATE utf8_bin NOT NULL,
 `num_parcela` varchar(50) COLLATE utf8_bin NOT NULL,
 `valor_parcela` varchar(50) COLLATE utf8_bin NOT NULL,
 `competencia` varchar(50) COLLATE utf8_bin NOT NULL,
 `situacao` varchar(50) COLLATE utf8_bin NOT NULL,
 PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin

Será alguem pode me ajudar a montar ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Como você disse, você não encontrou nada de acordo com as suas necessidades, infelizmente não temos como adivinhar quais são as suas necessidades para poder lhe aconselhar a como chegar ao objetivo final.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Boa Tarde Edgar Serra

 

O que eu quero é o seguinte:

Gerar parcelas dos clientes e salvar na tabela acima.

Exemplo:

 

Cliente: Fulano de Tal

Dt. Lançamento: 29/06/2015

Dt. Vencimento: 01/07/2015

Plano de Contas: Honorários Contabeis

Conta Bancaria: BB 5.201-3

Descrição: Pagamentos de Honorários Contabeis

Nun. Parcelas: 1/2

Competencia: 07/2015

Situação: A Receber

 

Cliente: Fulano de Tal

Dt. Lançamento: 29/06/2015

Dt. Vencimento: 01/08/2015

Plano de Contas: Honorários Contabeis

Conta Bancaria: BB 5.201-3

Descrição: Pagamentos de Honorários Contabeis

Nun. Parcelas: 2/2

Competencia: 08/2015

Situação: A Receber

 

No aguardo ...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ok, agora sabemos o que você precisa, agora precisamos saber qual a sua dúvida em como chegar a este resultado? Não sabe fazer o insert? Não sabe calcular datas futuras? etc...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Boa Noite

 

Encontrei esse código (abaixo), mas já quebrei a cabeça mais não consigo adaptar. Sendo que tenho que acrescentar todos os campos acima descrito.

 

Será que pode ajudar?

<?phpinclude "config/config.php"; //inclue seu arquivo de conexão com banco de dados $valor = $_POST['valor'];$parcelas = $_POST['parcelas'];$datapagamento1 = implode(!strstr($_POST['datapagamento1'], '/') ? "/" : "-", array_reverse(explode(!strstr($_POST['datapagamento1'], '/') ? "-" : "/", $_POST['datapagamento1']))); //Esta rotina é para converter a data do formato brasileiro para o americano$diavencimento = $_POST['vencimento'];$gravadata = $datapagamento1;$sql = "INSERT INTO mensalidades (valor_mens, data_mens, num_mens) VALUES ";echo '<table border="1">';echo "<tr>";echo "<td>Parcela</td>";echo "<td>Valor</td>";echo "<td>Vencimento</td>";echo "</tr>";for ($i = 1; $i <= $parcelas; $i++) {    //Parcela    $parcela = $i . "a"; //grava o número da parcela assim: 1a, 2a, 3a, etc...    echo "<tr>";    echo "<td>";    echo $parcela;    echo "</td>";    //Valor    echo "<td>";    echo $valor;    echo "</td>";    //Vencimento            echo "<td>";    echo implode(!strstr($gravadata, '-') ? "-" : "/", array_reverse(explode(!strstr($gravadata, '-') ? "/" : "-", $gravadata))); //Muda para o formato brasileiro    echo "</td>";    echo "</tr>";     if (!empty($diavencimento)) { //Se o dia de vencimento não tiver em branco        $dia = $diavencimento; //o dia será igual ao dia de vencimento    } else {        $dia = date("d", strtotime($gravadata)); //se o dia de vencimento tiver em branco, então o dia será igual ao dia da data de vencimento    }     $mes = date("m", strtotime($gravadata)) + 1;    $ano = date("Y", strtotime($gravadata));     $sql .= "(" . $valor . ", '" . $gravadata . "', '" . $parcela . "'),";     if ($mes == 13) { //se passar do mês 12, então inicia com o mes 1 do próximo ano        $mes = 1;        $ano = $ano + 1;    }     if ($dia == 30 && $mes == 2) { //fevereiro não pode ter 30 dias não é. kkk        $gravadata = $ano . "-" . $mes . "-28";    } else {        $gravadata = $ano . "-" . $mes . "-" . $dia;    }} echo "</table>"; //Remove a última vírgula da string SQL$sql = substr($sql, 0, -1);//Salva no bancotry {    echo "<p>String SQL: $sql</p>";    $stmt = BD::getConn()->prepare($sql);    if ($stmt->execute()):        echo "Mensalidades inseridas com sucesso.";    else:        echo "Erro ao inserir!";    endif;} catch (Exception $e) {    echo 'ERROR: ', $e->getMessage(), "\n";}

Fonte: http://wagoscripts.blogspot.com.br/2012/06/gerar-mensalidades.html

 

 

Alguém tem uma ideia ou outro código de acordo que eu preciso?

 

 

Boa Tarde

 

Consegui um exemplo na internet de mensalidade, mais quando adicionei alguns campos ele não insere no banco de dados.

 

Alguém a disposição.

<?php include "config/config.php"; //inclue seu arquivo de conexão com banco de dados  $conta = $_POST['conta'];$documento = $_POST['documento'];$plano  = $_POST['plano'];$descricao = $_POST['descricao'];$cliente = $_POST['cliente'];$valor = $_POST['valor'];$num_parc = $_POST['numparcela'];$vencimento  = implode(!strstr($_POST['vencimento'], '/') ? "/" : "-", array_reverse(explode(!strstr($_POST['vencimento'], '/') ? "-" : "/", $_POST['vencimento']))); //Esta rotina é para converter a data do formato brasileiro para o americano$dia_venc  = $_POST['diavenc'];$gravarData = $vencimento;$inserir_receita = "INSERT INTO receitas(nrparcela, dtvencimento, conta, documento, desreceita, descplano, nomecliente, valor) VALUES ";for ($i = 1; $i <= $num_parc; $i++) {    if (!empty($dia_venc)) { //Se o dia de vencimento não tiver em branco        $dia = $dia_venc; //o dia será igual ao dia de vencimento    } else {        $dia = date("d", strtotime($gravarData)); //se o dia de vencimento tiver em branco, então o dia será igual ao dia da data de vencimento    }    $mes = date("m", strtotime($gravarData)) + 1;    $ano = date("Y", strtotime($gravarData));$sql .= "('" . $num_parc . "', '" . $gravarData . "', '" . $conta . "', '" . $documento ."', '" . $descricao . "', '". $plano . "', '" . $cliente . "', '" . $valor . "')" or die(mysql_error());    if ($mes == 13) { //se passar do mês 12, então inicia com o mes 1 do próximo ano        $mes = 1;        $ano = $ano + 1;    }    if ($dia == 30 && $mes == 2) { //fevereiro não pode ter 30 dias não é. kkk        $gravarData = $ano . "-" . $mes . "-28";    } else {        $gravarData = $ano . "-" . $mes . "-" . $dia;    }}echo "</table>";//Remove a última vírgula da string SQL$sql = substr($sql, 0, -1);//Salva no bancotry {    echo "<p>String SQL: $sql</p>";    $stmt = BD::getConn()->prepare($sql);    if ($stmt->execute()):        echo "Mensalidades inseridas com sucesso.";    else:        echo "Erro ao inserir!";    endif;} catch (Exception $e) {    echo 'ERROR: ', $e->getMessage(), "\n";}?>

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.