• 10-12-2023, 01:40:43
    #1
    php kodları bulunan bir form mevcut elimde kredi hesaplama formu ama şöyle bir problemim var formu 2-3 kere kullanmak istiyorum ancak hesaplama yap dediğime tüm formlar açılıyor ilgili sayfa budur
    <?php
        echo $javascript_code;
        if(isset($_POST['hesapla'])) {
        echo $javascript_code;
        extract($_POST);
      /* Kredi Tutarı */
        $bul = array(' ',',','.');
        $degistir = array('','','');
         $kredi = str_replace($bul, $degistir, $kredi); // Bu alanda kredi tutarında boşluk virgül veya nokta varsa onları kaldırıyoruz.
      /* Kredi Tutarı */
      /* Kredi Tutarı */
        $vade = $vade; // Kaç taksit olacak
      /* Kredi Tutarı */
      /* Faiz Oranı */
        $bul = array(',',' ');
        $degistir = array('.','');
        $faiz = str_replace($bul, $degistir, $faiz); // Bu alanda faiz oranı virgül ile yazılıdı ise nokta ile değiştiriyoruz ve boşluk varsa onu siliyoruz.
      /* Faiz Oranı */
      /* (Banka Sigorta Muamele Vergisi) ve (Kredi Kaynak Destekleme Fonu) */
        $bul = array(',',' ');
        $degistir = array('.','');
          $bsmv = str_replace($bul, $degistir, $bsmv);
          $kkdf = str_replace($bul, $degistir, $kkdf);
      /* (Banka Sigorta Muamele Vergisi) ve (Kredi Kaynak Destekleme Fonu) */
      /* Vergiiler ile beraber toplam faiz oranı hesaplanıyor */
          $vergi_faiz = ($faiz / 100) * (1 + $bsmv + $kkdf);
      /* Vergiiler ile beraber toplam faiz oranı hesaplanıyor */
      /* Kredimizin aylık taksit tutarını hesaplıyoruz */
            $deger1 = $vergi_faiz * pow((1+$vergi_faiz),$vade);
            $deger2 = pow((1+$vergi_faiz),$vade) - 1;
            $taksit = $kredi * $deger1/$deger2;
        /* Kredimizin aylık taksit tutarını hesaplıyoruz */
        $toplam_faiz = "0";
        $toplam_kredi = "0";
        $toplam_anapara = "0";
        $toplam_bsmv = "0";
        $toplam_kkdf = "0";
        for ($row = '1'; $row <= $vade; $row++) {
            if ($row == '1') {
    // Birinci Satır
                $_faiz = $kredi * ($faiz / 100);
                $_kkdf = $_faiz * $kkdf;
                $_bsmv = $_faiz * $bsmv;
                $_anapara = $taksit - ($_faiz + $_kkdf + $_bsmv);
                $_kalananapara = $kredi - $_anapara;
            }else{
    // Diğer Satırlar
                $_faiz = $_kalananapara * ($faiz / 100);
                $_kkdf = $_faiz * $kkdf;
                $_bsmv = $_faiz * $bsmv;
                $_anapara = $taksit - ($_faiz + $_kkdf + $_bsmv);
                $_kalananapara = $_kalananapara - $_anapara;
            }
            $toplam_faiz = $toplam_faiz + $_faiz;
            $toplam_kredi = $toplam_kredi + $taksit;
            $toplam_anapara = $toplam_anapara + $_anapara;
            $toplam_kkdf = $toplam_kkdf + $_kkdf;
            $toplam_bsmv = $toplam_bsmv + $_bsmv;
     
        }
    ?>
                      <table class="table table-bordered">
                          <tr>
                              <th>Kredi Tutarı</th>
                              <th>Kredi Vadesi</th>
                              <th>Kredi Faizi</th>
                            <th>Toplam Faiz</th>  
                              <th>BSMV</th>
                              <th>KKDF</th>
                              <th>Taksit Tutarı</th>
                          </tr>
                          <tr>
                              <td><?php echo number_format($kredi, 2, ',', '.');?></td>
                              <td><?php echo $vade;?></td>
                              <td><?php echo $faiz;?></td>
                              <td><?php echo number_format($toplam_faiz, 2, ',', '.');?></td>
                              <td><?php echo $bsmv;?></td>
                              <td><?php echo $kkdf;?></td>
                              <td><?php echo number_format($taksit, 2, ',', '.');?></td>
                          </tr>
                      </table>
                      <table class="table table-bordered table-striped">
                          <tr>
                              <th>Dönem</th>
                              <th>Taksit Tutarı</th>
                              <th>Anapara</th>
                              <th>Faiz</th>                          
                              <th>KKDF</th>
                              <th>BSMV</th>
                              <th>Kalan Anapara</th>
                          </tr>
                          <?php
                              for ($row = '1'; $row <= $vade; $row++) {
                                  if ($row == '1') {
                      // Birinci Satır
                                      $_faiz = $kredi * ($faiz / 100);
                                      $_kkdf = $_faiz * $kkdf;
                                      $_bsmv = $_faiz * $bsmv;
                                      $_anapara = $taksit - ($_faiz + $_kkdf + $_bsmv);
                                      $_kalananapara = $kredi - $_anapara;
                                      echo '<tr>';
                                      echo '<td>'.$row.'</td>';
                                      echo '<td>'.number_format($taksit, 2, ',', '.').' TL</td>';
                                      echo '<td>'.number_format($_anapara, 2, ',', '.').'</td>';
                                      echo '<td>'.number_format($_faiz, 2, ',', '.').'</td>';
                                      echo '<td>'.$_kkdf.'</td>';
                                      echo '<td>'.$_bsmv.'</td>';
                                      echo '<td>'.number_format($_kalananapara, 2, ',', '.').'</td>';
                                      echo '</tr>';
                                  }else{
                      // Diğer Satırlar
                                      $_faiz = $_kalananapara * ($faiz / 100);
                                      $_kkdf = $_faiz * $kkdf;
                                      $_bsmv = $_faiz * $bsmv;
                                      $_anapara = $taksit - ($_faiz + $_kkdf + $_bsmv);
                                      $_kalananapara = $_kalananapara - $_anapara;
                                      if($row==13){
                                          echo '<tr id="toggle-button"><td colspan="7" style="text-align:center;">Devamını Göster</td></tr>';
                                      }
                                      if($row>12){
                                          echo '<tr class="toggleshow" style="display:none;">';
                                      }else{
                                          echo '<tr>';
                                      }
                                      echo '<td>'.$row.'</td>';
                                      echo '<td>'.number_format($taksit, 2, ',', '.').' TL</td>';
                                      echo '<td>'.number_format($_anapara, 2, ',', '.').'</td>';
                                      echo '<td>'.number_format($_faiz, 2, ',', '.').'</td>';
                                      echo '<td>'.number_format($_kkdf, 2, ',', '.').'</td>';
                                      echo '<td>'.number_format($_bsmv, 2, ',', '.').'</td>';
                                      echo '<td>'.number_format($_kalananapara, 2, ',', '.').'</td>';
                                      echo '</tr>';
                                  }
                                  $toplam_faiz = $toplam_faiz + $_faiz;
                                  $toplam_kredi = $toplam_kredi + $taksit;
                                  $toplam_anapara = $toplam_anapara + $_anapara;
                                  $toplam_kkdf = $toplam_kkdf + $_kkdf;
                                  $toplam_bsmv = $toplam_bsmv + $_bsmv;
     
                              }
                          ?>
                      </table>
    
                   <script>
        document.addEventListener("DOMContentLoaded", function() {
            var formId = '$banka_adi';
            var formButton = document.getElementById(formId + '-button');
            var form = document.getElementById(formId + '-form');
            var isOpen = false;
    
            formButton.addEventListener('click', function() {
                isOpen = !isOpen;
                toggleForm(formId, isOpen);
            });
    
            function toggleForm(formId, isOpen) {
                var form = document.getElementById(formId + '-form');
                var buttonText = form.querySelector('.toggle-button').innerHTML;
    
                if (isOpen) {
                    form.querySelector('.toggle-button').innerHTML = 'Tüm Ödeme Planını Gizle';
                } else {
                    form.querySelector('.toggle-button').innerHTML = 'Tüm Ödeme Planı';
                }
    
                toggle(document.querySelectorAll('.' + formId + '-toggleshow'), isOpen);
    
                function toggle(elements, isOpen) {
                    var element, index;
    
                    elements = elements.length ? elements : [elements];
                    for (index = 0; index < elements.length; index++) {
                        element = elements[index];
    
                        if (isOpen) {
                            element.style.display = '';
                        } else {
                            element.style.display = 'none';
                        }
                    }
                }
            }
        });
    </script>
    <?php  } ?>
    <?php if($bsmv==''){
        $bsmv = "0";
    }
    if($kkdf==''){
        $kkdf = "0";
    }
    if($banka_adi!=''){ ?><h3><?php echo $banka_adi;?></h3><?php } ?>
      
     
    
     
        
                      <form action="" method="post">
                          <div>
                              <label>Kredi Tutarı</label>
                              <input type="text" class="form-control" name="kredi" placeholder="Kredi Tutarı" required />
                          </div>
                          <div>
                              <label>Vade</label>
                              <select class="form-control" name="vade" required>
                                  <option value="12">1 Yıl (12 Ay)</option>
                                  <option value="24">2 Yıl (24 Ay)</option>
                                  <option value="36">3 Yıl (36 Ay)</option>
                                  <option value="48">4 Yıl (48 Ay)</option>
                                  <option value="60">5 Yıl (60 Ay)</option>
                                  <option value="72">6 Yıl (72 Ay)</option>
                                  <option value="84">7 Yıl (84 Ay)</option>
                                  <option value="96">8 Yıl (96 Ay)</option>
                                  <option value="108">9 Yıl (108 Ay)</option>
                                  <option value="120">10 Yıl (120 Ay)</option>
     
                              </select>
                          </div>
                          <div>
                              <label>Faiz Oranı</label>
                              <input type="text" class="form-control" name="faiz" placeholder="Faiz Oranı" value="<?php echo $faiz_oran;?>" readonly />
                          </div>
                      
                              <input type="hidden" class="form-control" name="bsmv" value="<?php echo $bsmv;?>" placeholder="BSMV" />                    
                              <input type="hidden" class="form-control" name="kkdf" value="<?php echo $kkdf;?>" placeholder="KKDF" />
                          <div>
                              <button type="submit" name="hesapla" style="float:right;color:white;width:50%;margin-top:1%;margin-bottom:1%;background:#3e843e;height:2em;">Kredi Hesapla</button>
                          </div>
                      </form>
    Fonksiyon Dosyası da budur
    <?php
    function kredi_hesaplama_shortcode($atts) {
        $atts = shortcode_atts(array(
            'title' => '',
            'faiz_oran' => '0,99',
            'bsmv' => '',
            'kkdf' => '',
        ), $atts);
    
        ob_start();
        $banka_adi = sanitize_title($atts['title']);
        $faiz_oran = str_replace(',', '.', $atts['faiz_oran']);
        $bsmv = str_replace(',', '.', $atts['bsmv']);
        $kkdf = str_replace(',', '.', $atts['kkdf']);
        include 'form.php';
        return ob_get_clean();
    }
    
    add_shortcode('kredi_hesaplama', 'kredi_hesaplama_shortcode');
    
    function kredi_hesaplama_2_shortcode($atts) {
        $atts = shortcode_atts(array(
            'title' => '',
            'faiz_oran' => '0,99',
            'bsmv' => '',
            'kkdf' => '',
        ), $atts);
    
        ob_start();
        $banka_adi = sanitize_title($atts['title']);
        $faiz_oran = str_replace(',', '.', $atts['faiz_oran']);
        $bsmv = str_replace(',', '.', $atts['bsmv']);
        $kkdf = str_replace(',', '.', $atts['kkdf']);
        include 'form.php';
        return ob_get_clean();
    }
    
    add_shortcode('kredi_hesaplama_2', 'kredi_hesaplama_2_shortcode');
    
    function kredi_hesaplama_3_shortcode($atts) {
        $atts = shortcode_atts(array(
            'title' => '',
            'faiz_oran' => '0,99',
            'bsmv' => '',
            'kkdf' => '',
        ), $atts);
    
        ob_start();
        $banka_adi = sanitize_title($atts['title']);
        $faiz_oran = str_replace(',', '.', $atts['faiz_oran']);
        $bsmv = str_replace(',', '.', $atts['bsmv']);
        $kkdf = str_replace(',', '.', $atts['kkdf']);
        include 'form.php';
        return ob_get_clean();
    }
    
    add_shortcode('kredi_hesaplama_3', 'kredi_hesaplama_3_shortcode');
    
    function kredi_hesaplama_4_shortcode($atts) {
        $atts = shortcode_atts(array(
            'title' => '',
            'faiz_oran' => '0,99',
            'bsmv' => '',
            'kkdf' => '',
        ), $atts);
    
        ob_start();
        $banka_adi = sanitize_title($atts['title']);
        $faiz_oran = str_replace(',', '.', $atts['faiz_oran']);
        $bsmv = str_replace(',', '.', $atts['bsmv']);
        $kkdf = str_replace(',', '.', $atts['kkdf']);
        include 'form.php';
        return ob_get_clean();
    }
    
    add_shortcode('kredi_hesaplama_4', 'kredi_hesaplama_4_shortcode');
    
    function kredi_hesaplama_5_shortcode($atts) {
        $atts = shortcode_atts(array(
            'title' => '',
            'faiz_oran' => '0,99',
            'bsmv' => '',
            'kkdf' => '',
        ), $atts);
    
        ob_start();
        $banka_adi = sanitize_title($atts['title']);
        $faiz_oran = str_replace(',', '.', $atts['faiz_oran']);
        $bsmv = str_replace(',', '.', $atts['bsmv']);
        $kkdf = str_replace(',', '.', $atts['kkdf']);
        include 'form.php';
        return ob_get_clean();
    }
    
    add_shortcode('kredi_hesaplama_5', 'kredi_hesaplama_5_shortcode');
    
    function kredi_hesaplama_6_shortcode($atts) {
        $atts = shortcode_atts(array(
            'title' => '',
            'faiz_oran' => '0,99',
            'bsmv' => '',
            'kkdf' => '',
        ), $atts);
    
        ob_start();
        $banka_adi = sanitize_title($atts['title']);
        $faiz_oran = str_replace(',', '.', $atts['faiz_oran']);
        $bsmv = str_replace(',', '.', $atts['bsmv']);
        $kkdf = str_replace(',', '.', $atts['kkdf']);
        include 'form.php';
        return ob_get_clean();
    }
    
    add_shortcode('kredi_hesaplama_6', 'kredi_hesaplama_6_shortcode');
  • 19-12-2023, 00:49:25
    #2
    <div class="calculator form1" id="form1">
                ...
    </div>
    şeklindeki divleri,
    <div>
       <div class="calculator form1" id="form1">
                ...
       </div>
    </div>
    şeklinde, bir div içerisine alırsanız çözülür hocam.