• Index
  •  » PHP
  •  » Pengurangan selisih 2 buah tanggal

#1 26-11-2010 10:42:41

susan_171183
2 dB
Registered: 27-03-2009
Posts: 48

Pengurangan selisih 2 buah tanggal

Teman sy mo tanya ttg selisih 2 buah tanggal dmn terdiri 3 buah textfield dimana
tgl1 merupakan tanggal yang diambil dari sistem.
tgl2 merupakan tanggal yang diambil dari database
datn tgl 3 merupakan hasil pengurangan

Untuk fungsi pengurangan saya menggunakan fungsi gregoriantojd.
Tp hasil yang saya dapatkan selisihnya adalah 0

code:
<?php

include 'koneksi.php';
$tgl1=date('Y-m-d');


$tgl2 = $_POST['tgl2'];
$selisih = $_POST['selisih'];

$SQL = "SELECT * FROM tgl";
$QUERY = mysql_query($SQL);
$result = mysql_fetch_array($QUERY);

$pecah1 = explode("-", $tgl1);
$date1 = $pecah1[2];
$month1 = $pecah1[1];
$year1 = $pecah1[0];   

$pecah2 = explode("-", $tgl2);
$date2 = $pecah2[2];
$month2 = $pecah2[1];
$year2 =  $pecah2[0]; 

$jd1 = GregorianToJD(strtotime($month1), strtotime($date1), strtotime($year1));
$jd2 = GregorianToJD(strtotime($month2), strtotime($date2), strtotime($year2)); 
$selisih = abs($jd2 - $jd1);

?>
<html>
<head>
</head>
<body>
<form name="form1" method="post" action="">
  <input type="text" name="tgl1" value="<?php echo $tgl1 ?>">
  <input type="text" name="tgl2" value="<?php echo $result['date']; ?>">
  <input name="selisih" type="text" id="selisih" value="<?php echo $selisih ?>"> 
</form>

</body>
</html>

kira2 dari script diatas apakah ada yg salah ? mohon infonya

Thx...

Offline

 

#2 Yesterday 16:34:35

aprianto
4 dB
From: Pekanbaru
Registered: 02-03-2008
Posts: 59
Website

Re: Pengurangan selisih 2 buah tanggal

salam,

untuk menggunakan fungsi perbedaan tanggal, kamu bisa menggunakan fungsi di database, jadi gak usah pusing2 menggunakan syntax.

gunakan fungsi datedifference untuk problem kamu., coba cari di w3schools ada kok contohnya..selamat mencoba.


Regard,
Aptianto
http://www.blogprogrammer.co.nr

Offline

 

#3 Today 00:42:26

nzserve
10 dB
From: Jatim, Indo
Registered: 19-12-2009
Posts: 397
Website

Re: Pengurangan selisih 2 buah tanggal

@atas
gak papa, buat reverensi aja, namanya juga tanya kan, kalau dak gitu dak berkembang..wkwkwkw

coba utek2 code di bawah ini, semoga situ paham
keterangan:

Code:

$need_a => itu tanggal yang ada di database
$need_b => jumlah max hari contoh (1 sampai 30)
$neec_c => tanggal sekarang => date("d-m-Y");
cara pangil
echo sum_date("05-10-2010","25","25-10-2010");
hasil => 5;

Code:

function sum_date($need_a,$need_b,$need_c){
    $date_db = "$need_a";
    $dateArr = explode("-",$date_db);
    $max_day = "$need_b";
    $get_day = cal_days_in_month(CAL_GREGORIAN,$dateArr[1],$dateArr[2]);
    $db_day = $dateArr[0]; // 01
    $db_mon = $dateArr[1]; // 10
    $db_yer = $dateArr[2]; // 2010
    $sum_day = $db_day + $max_day;
    if($sum_day > $get_day){
        $sumdays = $sum_day - $get_day;
        if($sumdays < 10){
            $min_day = "0".$sumdays;
        }else{
            $min_day = $sumdays;
        }
        $sum_mon = $db_mon + 1;
        if($sum_mon > 12){
            $summon = $sum_mon - 12;
            if($summon < 10){
                $min_mon = "0".$summon;
            }
            $min_yea = $db_yer + 1;
        }else{
            if($sum_mon < 10){
                $min_mon = "0".$sum_mon;
            }else{
                $min_mon = $sum_mon;
            }
            $min_yea = $db_yer;
        }
    }else{
        $min_day = $sum_day;
        $min_mon = $db_mon;
        $min_yea = $db_yer;
    }
    //$date_now = date("d-m-Y");
    $a = strtotime($date_db);
    $b = strtotime($need_c);
    $c = strtotime("$min_day-$min_mon-$min_yea");
    $d = $c - $b;
    $e = $d / (60 * 60 * 24);
    return "$e";
}

semoga berhasil,
salam nz
http://ingetaku.com

Offline

 

#4 Today 10:33:06

adenjawen
4 dB
Registered: 10-11-2010
Posts: 77

Re: Pengurangan selisih 2 buah tanggal

Wah bisa nambah ilmu juga ^_^

Offline

 
  • Index
  •  » PHP
  •  » Pengurangan selisih 2 buah tanggal

Board footer

Powered by PunBB
© Copyright 2002-2008 PunBB