Php Girilen Tarih Aralığına Göre Fiyat Hesaplama

2 ay önce

Merhabalar bir arkadaşımın projesi var kiralık villa ve paket tur şeklinde fakat hesaplama kısmında haftalık olarak net bir şekilde hesaplamayı hatasız yapıyor. Fakat 7 günden sonra 8 günde olsa 15 günde olsa fiyat aynı hesaplıyor. Öbür ayın ilk gününe geçtiğinde fiyat değişimi oluyor. Her ayın fiyatları haftalık olarak sisteme giriliyor. Mesela temmuz 1500 ağustos 1000 TL gibi fakat ne yaptıysam düzeltmeyi başaramadım kaçırdığım noka nedir tam anlayamadım yardımcı olup kodlara bi göz gezdirseniz eksiğim nedir acaba

 

Calculate = Hesaplama kodlarımız

<?php
session_start();
    require_once("../system/class.pdo.php");
    require_once("../system/functions.php");
    require_once("../system/cache.php");
$aylar = array("ocak", "subat", "mart", "nisan", "mayis", "haziran", "temmuz", "agustos", "eylul", "ekim", "kasim", "aralik");

    $id = $_GET['id'];


        $ilan = $conn -> safe_onerow("select * from ilanlar where id=?",array($id));
        $buyil = explode(".",$_GET['tarih1'])[2];
        $sonrayil = explode(".",$_GET['tarih2'])[2];
        $gun = explode(".", $_GET['tarih1'])[0];
        $gun2 = explode(".", $_GET['tarih2'])[0];
        $buay = explode(".",$_GET['tarih1'])[1] - 1;
        $sonraay = explode(".",$_GET['tarih2'])[1] - 1;
        if($buyil < $sonrayil) {
            for ($i = $buyil; $i<=$sonrayil; $i++) {
                if($i == $buyil) {
                    for($k = $buay; $k<=11; $k++) {
                    if($k == $buay) {
                        $gunler = cal_days_in_month(CAL_GREGORIAN,$k+1,$i) - $gun;
                        $toplam += $ilan[$aylar[$k]] / 7 * $gunler;
                    }else {
                        $gunler = cal_days_in_month(CAL_GREGORIAN,$k+1,$i);
                        $toplam += $ilan[$aylar[$k]] / 7 * $gunler;
                    }
                }
                }
                else if ($i == $sonrayil) {
                    
                    for($k = 0; $k<=$sonraay; $k++) {
                    
                    if ($k == $sonraay) {
                        $gunler = $gun2;
                        $toplam += $ilan[$aylar[$k]] / 7 * $gunler;
                    }else {
                        $gunler = cal_days_in_month(CAL_GREGORIAN,$k+1,$i);
                        $toplam += $ilan[$aylar[$k]] / 7 * $gunler;
                    }
                }
                }else {
                    for($k = 0; $k<=11; $k++) {
        
                        $gunler = cal_days_in_month (CAL_GREGORIAN,$k+1,$i);
                        $toplam += $ilan[$aylar[$k]] / 7 * $gunler;
                }
                }
            }
        }else {
            for($k = $buay; $k<=$sonraay; $k++) {
                    if($k == $buay) {
                        $gunler = cal_days_in_month(CAL_GREGORIAN,$k+1,$buyil) - $gun;
                        $toplam += $ilan[$aylar[$k]] / 7 * $gunler;
                    }else if($k == $sonraay) {
                        $gunler = $gun2;
                        $toplam += $ilan[$aylar[$k]] / 7 * $gunler;
                    }else {
                        $gunler = cal_days_in_month(CAL_GREGORIAN,$k+1,$buyil);
                        $toplam += $ilan[$aylar[$k]] / 7 * $gunler;
                    }
                }
        }
        $tarih1= strtotime(tarihcevir($_GET['tarih1']));
        $tarih2= strtotime(tarihcevir($_GET['tarih2']));
        $diff = $tarih2-$tarih1;$gun = round($diff / (60*60*24));
        
        
        $kapora = $toplam *35 / 100;
        $giriste = $toplam - $kapora;
        echo '
        <ul>

 

 

Buda function Hesaplama

 

function hesapla(tur) {
    
        $(".calculate .loader").show();
        $(".calculate").show();
        if (tur=="r") {
            var tarih1 = $("input[name='rstart_date']").val();
            var tarih2 = $("input[name='rend_date']").val();
            
        }
        else{
            var tarih1 = $("input[name='mrstart_date']").val();
            var tarih2 = $("input[name='mrend_date']").val();
            
        }
        
        
        var veriler = "id=<?=$ilan['id']?>&tarih1=" + tarih1+"&tarih2="+tarih2;
            
            var adres = '/ajax/calculate.php';
            
        $.ajax({
            type: 'get',
            url: adres,
            cache: false,
            data: veriler,
            success: function (cevap) {
                $(".calculate .sonucyaz").html(cevap);
                setTimeout(gizle, 1000);
                
            }
        });
       

    }

#Yazılım #php