Ir para conteúdo
  • ×   Você colou conteúdo com formatação.   Remover formatação

      Only 75 emoji are allowed.

    ×   Your link has been automatically embedded.   Display as a link instead

    ×   Your previous content has been restored.   Clear editor

    ×   You cannot paste images directly. Upload or insert images from URL.

  • Conteúdo Similar

    • Por maruanbredoff
      Bom dia pessoal. Estou com um problema no meu sistema.
      Eu tenho o seguinte Codigo para fazer o calculo das parcelas. Funciona perfeitamente mas tem algumas situações que não resolve como é o caso do mes de fevereiro que tem 28 dias e nos meses que não tem 31 dias. Alguem pode me ajudar seguindo o padrao deste codigo como faria para contornar essa situação?
      <?php while($qtdparcelas >0) { // realiza a gravação no banco de dados $data = $ano.'/'.$mes.'/'.$dia;// iguala a data a data da venda //$sqlinsert ="INSERT INTO contas_receber (idparcelas, parcela, idcliente, idmovimento, vencimento, valor, idsituacao) VALUES (null, '$parcela', '$idcliente', '$idmovimentoprox', '$data', '$valor_parcela','1')"; //mysqli_query($con,$sqlinsert) or die(mysqli_error($con)); $parcela++; if ($mes<12){ $mes++; }// adiciona +1 a variavel mes else{ $mes = 1; $ano++;} echo $data; ?><br> <?php } Tentei fazer desta forma aqui mas não funcionou $qtdparcelas=$qtdparcelas-1;// subtrai 1 a variavel parcela if(($dia=31) && ($mes=4) && ($mes=6) && ($mes=9) && ($mes=11)){ $mes++; $dia=30; } elseif($mes=2 and $dia >28){ $dia=28; }  
    • Por Daniel Cruz
      Bom dia, Gostaria de saber como faço para inserir o resultado das parcelas no banco de dados..
      Segue o codigo..
       
      <?php
      // DATA PARA A PRIMEIRA PARCELA A PAGAR
      /////////// ANO, MÊS, DIA
      $val = "R$ 180,00";
      $DP = Array(2018, 05, 31);
      // QUANTIDADE DE PARCELAS
      $parcelas = 12;
      // ARRAY PARA AS DATAS
      $data_array = Array($DP[0], $DP[1], $DP[2]);
      $data_array2 = Array($DP[0], $DP[1], $DP[2]);
      // ARMAZENANDO MÊS DA DATA MENOS 1
      $n = $data_array[1]-1;
      $v_i = $n;
      // FOR PRINCIPAL
      for($i = 0; $i < $parcelas; $i++) {
      $v_i++;
      // BASE PARA SOMAR OS MESES
      $v = strtotime ( '+'.$i.' month' , strtotime(implode("-", $data_array))) ;
      $v2 = strtotime ( '+'.$i.' month' , strtotime(implode("-", $data_array2))) ;
      $nd = date ( 'Y-m-d' , $v );
      $nd2 = date ( 'Y-m-d' , $v2 );
      // PEDAÇOS DA DATA DO LAÇO
      $p = explode("-", $nd);
      // ATÉ 12 MÊSES
      if($v_i <= 12) {
      // BASE DO MÊS ATUAL
      $base_mes = date("Y-m-t", strtotime($nd));
      // PEGANDO O ÚLTIMO DIA DO MÊS DO LAÇO
      $forma_data = $p[0].'-'.$v_i.'-01';
      $ultimo_dia_do_mes = date("Y-m-t", strtotime($forma_data));
      $b1 = explode("-", $base_mes); // EXPLODE DO BASE MES
      $b2 = explode("-", $ultimo_dia_do_mes); // EXPLODE DO ULTIMO DIA DO MÊS
      if($b1[2]!=$b2[2]) {
      echo "$val || {$b2[0]}-{$b2[1]}-{$b2[2]}<br>";
      } else {
      echo "$val || {$b1[0]}-{$b1[1]}-{$data_array[2]}<br>";
      }
      }
      // ATÉ 12 MÊSES
      // DE 12 À 24 MESES
      elseif($v_i > 12 && $v_i <= 24) {
      // BASE DO MÊS ATUAL
      $base_mes = date("Y-m-t", strtotime($nd));
      // PEGANDO O ÚLTIMO DIA DO MÊS DO LAÇO
      $forma_data = $p[0].'-'.($v_i-12).'-01';
      $ultimo_dia_do_mes = date("Y-m-t", strtotime($forma_data));
      $b1 = explode("-", $base_mes); // EXPLODE DO BASE MES
      $b2 = explode("-", $ultimo_dia_do_mes); // EXPLODE DO ULTIMO DIA DO MÊS
      if($b1[2]!=$b2[2]) {
      echo "$val || {$b2[0]}-{$b2[1]}-{$b2[2]}<br>";
      } else {
      echo "$val || {$b1[0]}-{$b1[1]}-{$data_array[2]}<br>";
      }
      }
      // DE 12 À 24 MESES
      // DE 24 À 36 MESES
      elseif($v_i > 24 && $v_i <= 36){
      // BASE DO MÊS ATUAL
      $base_mes = date("Y-m-t", strtotime($nd));
      // PEGANDO O ÚLTIMO DIA DO MÊS DO LAÇO
      $forma_data = $p[0].'-'.($v_i-24).'-01';
      $ultimo_dia_do_mes = date("Y-m-t", strtotime($forma_data));
      $b1 = explode("-", $base_mes); // EXPLODE DO BASE MES
      $b2 = explode("-", $ultimo_dia_do_mes); // EXPLODE DO ULTIMO DIA DO MÊS
      if($b1[2]!=$b2[2]) {
      echo "$val || {$b2[0]}-{$b2[1]}-{$b2[2]}<br>";
      } else {
      echo "$val || {$b1[0]}-{$b1[1]}-{$data_array[2]}<br>";
      }
      }
      // DE 24 À 36 MESES
      // DE 36 À 48 MESES
      elseif($v_i > 36 && $v_i <= 48){
      // BASE DO MÊS ATUAL
      $base_mes = date("Y-m-t", strtotime($nd));
      // PEGANDO O ÚLTIMO DIA DO MÊS DO LAÇO
      $forma_data = $p[0].'-'.($v_i-36).'-01';
      $ultimo_dia_do_mes = date("Y-m-t", strtotime($forma_data));
      $b1 = explode("-", $base_mes); // EXPLODE DO BASE MES
      $b2 = explode("-", $ultimo_dia_do_mes); // EXPLODE DO ULTIMO DIA DO MÊS
      if($b1[2]!=$b2[2]) {
      echo "$val || {$b2[0]}-{$b2[1]}-{$b2[2]}<br>";
      } else {
      echo "$val || {$b1[0]}-{$b1[1]}-{$data_array[2]}<br>";
      }
      }
      // DE 36 À 48 MESES
      // DE 48 À 60 MESES
      elseif($v_i > 48 && $v_i <= 60){
      // BASE DO MÊS ATUAL
      $base_mes = date("Y-m-t", strtotime($nd));
      // PEGANDO O ÚLTIMO DIA DO MÊS DO LAÇO
      $forma_data = $p[0].'-'.($v_i-48).'-01';
      $ultimo_dia_do_mes = date("Y-m-t", strtotime($forma_data));
      $b1 = explode("-", $base_mes); // EXPLODE DO BASE MES
      $b2 = explode("-", $ultimo_dia_do_mes); // EXPLODE DO ULTIMO DIA DO MÊS
      if($b1[2]!=$b2[2]) {
      echo "$val || {$b2[0]}-{$b2[1]}-{$b2[2]}<br>";
      } else {
      echo "$val || {$b1[0]}-{$b1[1]}-{$data_array[2]}<br>";
      }
      }
      // DE 48 À 60 MESES
      else {
      } // FIM DO ELSEIF
      } // FIM DO FOR PRINCIPAL
      ?>
    • Por tony_lu
      Ola pessoal, estou integrando o checkout transparente do Pagseguro e me surgiu uma duvida, quero colocar um campo onde o usuario pode colocar o numero de parcelas, mas precisa aparecer os valores, e como vou saber o valor exato das parcelas que tiver juros?!
       
      Vi em algumas lojas virtuais que existe essa opção de aparecer as parcelas com os valores, alguem pode me ajudar?
    • Por dev_aprendiz
      Boa tarde, pessoal! Não sou muito de pedir ajuda em fórum, procuro sempre resolver meus pepinos que aparecem durante o desenvolvimento. Mas, nesse caso em específico, já tentei de tudo e não consegui solução. Estou desenvolvendo um sistema web em PHP e consegui salvar parcelas no banco de dados MySQL.  O problema só está sendo porque independente da data do serviço que eu escolha ou digite no campo de data do formulário, o dia salvo no banco de dados fica 2017-09-19. Ou seja, já tentei salvar a data 2017-08-18, que é hoje, já tentei outras datas para frente e para trás e sempre vai para o banco de dados a mesma coisa 2017-09-19, 2017-10-19, 2017-11-19, etc. Os meses e ano está correto, inclusive quando divido em 6 parcelas ele muda o ano certinho e tudo, o problema está sendo só o dia. Sempre 19. Segue o código que estou usando para gerar as parcelas:
       
      $serviceID = mysqli_insert_id($conn);
              $sql1 = "SELECT id_servico, data_servico,valor_procedimento,qtd_parcelas FROM servico WHERE id_servico = '$serviceID'";
              $query1 = mysqli_query($conn,$sql1);
              while($row = mysqli_fetch_assoc($query1)){    
              $servicoID = $row['id_servico'];
              $dataS = $row['data_servico'];                            
              $valorP = $row['valor_procedimento'];
              $qtdP = $row['qtd_parcelas'];                    
                              
              
              //separando a data do serviço por partes
              date_default_timezone_set('America/Recife');                    
              $partes = explode("-",$dataS);
              $dia = $partes[0];
              $mes = $partes[1];
              $ano = $partes[2];
              //dividindo o valor total do servico pelo número de parcelas
              $valor_parcela = $valorP/$qtdP;                                                
              for($i = 1;$i <= $qtdP;$i++){
                  //incrementando o mês em 1 para a primeira parcela entrar no
                  //mês posterior                        
                  //$data_vencimento = $dia.'-'.($mes+1).'-'.$ano;
                  $data_vencimento = date('Y-m-d',strtotime("+".$i." month",mktime($mes,$dia,$ano)));
                  $sql2 = "INSERT INTO parcelamento(id_servico,valor_parcela,parcela,data_vencimento) VALUES('$servicoID','$valor_parcela','$i','$data_vencimento')";
                  $insert2 = mysqli_query($conn,$sql2);                            
              }
          }
       
      Tentei enviar em anexo imagem do retorno do BD, mas não está aceitando o arquivo. Só consegui enviar copiando e colando aqui.
      '357', '77', '2', '2017-10-19', '108.33', '0', '0'
      '358', '77', '3', '2017-11-19', '108.33', '0', '0'
      '359', '77', '4', '2017-12-19', '108.33', '0', '0'
      '360', '77', '5', '2018-01-19', '108.33', '0', '0'
      '361', '77', '6', '2018-02-19', '108.33', '0', '0'
      '362', '89', '1', '2017-09-19', '183.33', '0', '0'
      '363', '89', '2', '2017-10-19', '183.33', '0', '0'
      '364', '89', '3', '2017-11-19', '183.33', '0', '0'
      '365', '89', '4', '2017-12-19', '183.33', '0', '0'
      '366', '89', '5', '2018-01-19', '183.33', '0', '0'
      '367', '89', '6', '2018-02-19', '183.33', '0', '0'
       
      Ah, só explicando que no código acima o parâmetro de hora do mktime (0,0,0) não coloquei pois estava salvando no BD assim, com o ano 2024 e as datas nada a ver com o que passei no formulário:
       
      '344', '75', '1', '2024-04-08', '133.33', '0', '0'
      '345', '75', '2', '2024-05-08', '133.33', '0', '0'
      '346', '75', '3', '2024-06-08', '133.33', '0', '0'
      '347', '75', '4', '2024-07-08', '133.33', '0', '0'
      '348', '75', '5', '2024-08-08', '133.33', '0', '0'
      '349', '75', '6', '2024-09-08', '133.33', '0', '0'
       
       
      Me perdoem qualquer falha, pois é a primeira vez que peço ajuda em fórum. Fico grata a quem puder me auxiliar.
       

       
    • Por Mactoscohen
      Ola Galera...
      não sei como fazer um plano de amortizações por favor preciso da vossa ajuda
      exemplo:
      N*P      v. Capital       Cap. Divida         v. P/Mes            
      01       80.000            100.000            20.000   
      02        80.000              80.000            20.000      
      03        80.000              60.000            20.000   
      04        80.000              40.000            20.000
      05        80.000              20.000            20.000  
      06        80.000              00.000            00.000
      <?php include_once ("segura.php"); protPagina (); $user_logado = $_SESSION['userID']; ?> <div id="corpo_relatorio"> <table > <tr> <td colspan="8" align="center" bgcolor="#CCCCCC" ><h1>Plano Financeiro</h1></td> </tr> <tr> <td width="226" height="22" align="center" bgcolor="#CCCCCC"><strong>Valor Capitral</strong></td> <td width="327" align="center" bgcolor="#CCCCCC"><strong>Capi. Dívida</strong></td> <td width="105" colspan="2" align="center" bgcolor="#CCCCCC"><strong>V. P/Mes</strong></td> </tr> <?php $sql = mysql_query("SELECT * FROM tb_recibos" ) or die(mysql_error()); $i = 0; while($resultado = mysql_fetch_array($sql)){ $valor_capital =$resultado['valor_capital']; $cap_divida =$resultado['cap_divida']; $valor_mes =$resultado['valor_mes']; ?> <tr class="<?php echo ($i % 2) == 1 ? 'linha_a' : 'linha_b'?>"> <td align="right" ><?php echo number_format($valor_capital,2,",","."); ?></td> <td align="right" ><?php echo number_format($cap_divida,2,",","."); ?></td> <td colspan="2" ><?php echo number_format($valor_mes,2,",","."); ?></td> <?php $i++; } ?> </tr> </table> </div>  
×

Informação importante

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