Devilzc0de Forum Follow @devilzc0de
  • Home
  • Hacking
  • Networking
  • Programming
  • O.S
  • Server
  • Tweets
  • Search
  • Member List
  • Calendar
Current time: 05-25-2013, 11:09 PM Hello There, Guest! (Login — Register)
Devilzc0de Forum › Information Technology › Programming › PHP v
« Previous 1 2 3 4 5 ... 31 Next »

[Tutor] [PHP] Membuat Sendiri Fungsi Hitung Batas Waktu Deadline

Home General Computer Multimedia Business Lounge

Post Reply 
Tweet
Threaded Mode | Linear Mode
Tutor [PHP] Membuat Sendiri Fungsi Hitung Batas Waktu Deadline
04-01-2012, 02:52 AM
Post: #1
K4pT3N Offline
./Devilz Officer
Posts: 155
Joined: May 2010
Reputation: 61
[PHP] Membuat Sendiri Fungsi Hitung Batas Waktu Deadline
yarp, lagi-lagi ane terlalu pusing untuk mencari fungsi dari date() untuk menghitung batas waktu tertentu yang digunakan untuk deadline. Daripada pusing-pusing nyari fungsi yang tepat, mendingan bikin sendiri fungsi buat menghitung batas waktu a.k.a deadline.

Coba langsung ditilik code nya yak

PHP Code:
<?php
    
class waktu {        
        function 
frmDate($date,$code){
            
$explode = explode("-",$date);
            
$year  = $explode[0];
            (
substr($explode[1],0,1)=="0")?$month=str_replace("0","",$explode[1]):$month=is_string($explode[1]);
            
$dated = $explode[2];
            
$explode_time = explode(" ",$dated);
            
$dates = $explode_time[0];        
            
            switch(
$code){
                
// Per Object
                
case 4: $format = $dates; break;                                                            // 01
                
case 5: $format = $month; break;                                                            // 01
                
case 6: $format = $year; break;                                                                // 2011
            
}        
            return 
$format;
        }    
        function 
now($code=1){
            switch(
$code){
                case 
1: $date = date("Y-m-d H:i:s"); break;
                case 
2: $date = date("Y-m-d"); break;
                case 
3: $date = date("H:i:s"); break;
            }
            return 
$date;
        }
        function 
nmonth($month){
            
$thn_kabisat = date("Y") % 4;
            (
$thn_kabisat==0)?$feb=29:$feb=28;
            
$init_month = array(1=>31,    // Januari [current]
                                
2=>$feb,    // Feb
                                
3=>31,    // Mar
                                
4=>30,    // Apr
                                
5=>31,    // Mei
                                
6=>30,    // Juni
                                
7=>31,    // Juli
                                
8=>31,    // Aug
                                
9=>30,    // Sep
                                
10=>31,    // Oct    
                                
11=>30,    // Nov
                                
12=>31);// Des
            
$nmonth = $init_month[$month];
            return 
$nmonth;
        }
        function 
dateRange($start,$end){
            
$xdate    =$this->frmDate($start,4);
            
$ydate    =$this->frmDate($end,4);
            
$xmonth    =$this->frmDate($start,5);
            
$ymonth    =$this->frmDate($end,5);
            
$xyear    =$this->frmDate($start,6);
            
$yyear    =$this->frmDate($end,6);
            if(
$xyear==$yyear){
                if(
$xmonth==$ymonth){
                    
$nday=$ydate+1-$xdate;
                } else {
                    
$r2=NULL;
                    
$nmonth = $ymonth-$xmonth;            
                    
$r1 = $this->nmonth($xmonth)-$xdate+1;
                    for(
$i=$xmonth+1;$i<$ymonth;$i++){
                        
$r2 = $r2+$this->nmonth($i);
                    }
                    
$r3 = $ydate;
                    
$nday = $r1+$r2+$r3;
                }
            } else {
                
// Last Year
                //get_nDay
                
$r2=NULL; $r3=NULL;
                
$r1=$this->nmonth($xmonth)-$xdate+1;
                
//get_nMonth
                
for($i=$xmonth+1;$i<13;$i++){
                    
$r2 = $r2+$this->nmonth($i);
                }
                
// Current Year
                
for($i=1;$i<$ymonth;$i++){
                    
$r3 = $r3+$this->nmonth($i);
                }
                
$r4 = $ydate;
                
$nday = $r1+$r2+$r3+$r4;
            }            
            return 
$nday." Hari";
        }
        function 
deadline($date){
            
$now = $this->now();
            
$yDate = $this->frmDate($date,6);
            
$mDate = $this->frmDate($date,5);
            
$dDate = $this->frmDate($date,4);
            
$yNow = $this->frmDate($now,6);
            
$mNow = $this->frmDate($now,5);
            
$dNow = $this->frmDate($now,4);
            
$deadmsg = "Telah lewat";
            
// cek tahun
            
if($yDate>$yNow){
                return 
$this->dateRange($now,$date);
            } elseif(
$yDate==$yNow){
                
// cek bulan
                
if($mDate>$mNow){
                    return 
$this->dateRange($now,$date);
                } elseif(
$mDate==$mNow){
                    
// cek hari
                    
if($dDate>=$dNow){
                        return 
$this->dateRange($now,$date);
                    } else {
                        return 
$deadmsg;
                    }
                } else {
                    return 
$deadmsg;
                }
            } else {
                return 
$deadmsg;
            }
        }        
    }
?>

Penjelasan dikit:
Misalnya, kita membuat sistem untuk input data untuk tugas mahasiswa secara online. Untuk input data tersebut kita memberi tanggal tertentu sebagai batas waktu penginputan. Jika lewat dari tanggal tersebut, maka data sudah tidak bisa diinputkan lagi.

Sebagai contoh, saat artikel ini ditulis tanggal 1 April 2012 atau dalam format database menjadi "2012-04-01", dan kita memberi kesempatan kepada mahasiswa untuk menginput tugas sampai dengan tanggal 5 April 2012. Berarti sisa hari yang dimiliki mahasiswa tersebut untuk menginput data adalah 5 hari (tanggal 5 masih bisa melakukan input data). Maka dengan fungsi diatas kita akan lebih mudah untuk mendapatkan sisa waktu harinya.

Contoh penggunaan fungsi:

PHP Code:
<?php
    $waktu 
= new waktu;
    
$date = "2012-04-05";
    echo 
"Deadline : ".$waktu->deadline($date);
?>

Btw, hahaha.. panjang banget yak scriptnya. itu soalnya udah digabungin sama fungsi-fungsi lain ane yang kali aja bisa dipake per masing-masing fungsinya. heuheu.. kalo ada yang punya cara yang lebih pendek, di share ya.. please :P
Find all posts by this user
Quote this message in a reply
 Reputed by :  ./ rex(+1) , ditatompel(+1)
04-01-2012, 09:02 PM
Post: #2
ditatompel Offline
Administrator
*******
Administrators
Posts: 2,168
Joined: Dec 2010
Reputation: 367
RE: [PHP] Membuat Sendiri Fungsi Hitung Batas Waktu Deadline
Wah mantap nih omz... Ane ijin pelajari dulu omz... belajar
Find all posts by this user
Quote this message in a reply
04-01-2012, 09:33 PM
Post: #3
DnA19 Away
Devilz e-Magazine Team (DeMT)
*****
DeMT Team
Posts: 446
Joined: Sep 2011
Reputation: 76
RE: [PHP] Membuat Sendiri Fungsi Hitung Batas Waktu Deadline
mantap
izin belajar dulu 0mz...
smangat
Find all posts by this user
Quote this message in a reply
04-02-2012, 03:26 PM
Post: #4
ed0c0d3 Offline
./Devilz 1st Cadet
Posts: 5
Joined: Apr 2012
Reputation: 0
RE: [PHP] Membuat Sendiri Fungsi Hitung Batas Waktu Deadline
nah ini yang saya cari, thanks om :)
Find all posts by this user
Quote this message in a reply
04-05-2012, 07:00 PM
Post: #5
chiboga Offline
./Devilz Advisor
Posts: 695
Joined: Nov 2011
Reputation: 24
RE: [PHP] Membuat Sendiri Fungsi Hitung Batas Waktu Deadline
belajar
mantapmantap om
ijin plajari dlo
Find all posts by this user
Quote this message in a reply
04-17-2012, 10:43 AM
Post: #6
joon junior Offline
./Devilz 1st Cadet
Posts: 8
Joined: Apr 2012
Reputation: 0
RE: [PHP] Membuat Sendiri Fungsi Hitung Batas Waktu Deadline
Mantab gan ane udah coba jalanin kodenya mantap
Find all posts by this user
Quote this message in a reply
04-26-2012, 03:52 AM
Post: #7
thij3e Offline
./Devilz 1st Cadet
Posts: 46
Joined: Oct 2011
Reputation: 1
RE: [PHP] Membuat Sendiri Fungsi Hitung Batas Waktu Deadline
mantap
ane belajar dulu y..
Find all posts by this user
Quote this message in a reply
11-28-2012, 08:13 AM (This post was last modified: 11-28-2012 08:13 AM by l_lawliet.)
Post: #8
l_lawliet Offline
./Devilz 1st Cadet
Posts: 1
Joined: Nov 2012
Reputation: 0
RE: [PHP] Membuat Sendiri Fungsi Hitung Batas Waktu Deadline
saya newbie disini, baru mau belajar php, terima kasih

belajar
Find all posts by this user
Quote this message in a reply
04-18-2013, 10:29 PM (This post was last modified: 04-18-2013 10:30 PM by hakimoxz.)
Post: #9
hakimoxz Offline
./Devilz Advisor
Posts: 782
Joined: Jul 2011
Reputation: 37
RE: [PHP] Membuat Sendiri Fungsi Hitung Batas Waktu Deadline
bokmark asik
mantap nih buat tugas belajar
Visit this user's website Find all posts by this user
Quote this message in a reply
04-18-2013, 11:26 PM
Post: #10
denny.satria Offline
./Devilz 1st Cadet
Posts: 28
Joined: May 2012
Reputation: 0
RE: [PHP] Membuat Sendiri Fungsi Hitung Batas Waktu Deadline
ijin dipelajari gan
Find all posts by this user
Quote this message in a reply
« Next Oldest | Next Newest »
Post Reply 


Topic Tools
Topic Link :
BBCode :
HTML Code :
View a Printable Version Send Thread to a Friend Subscribe to this thread
Submit Google Submit Face book Submit to Digg Submit to Reddit Submit to Furl Submit to Del.icio.us Submit to Jeqq

Possibly Related Threads...
Thread: Author Replies: Views: Last Post
  [Ask] cara membuat data mining pada php? Keonx 2 88 05-19-2013 06:12 PM
Last Post: Keonx
Question Bagaimana membuat for edit dengan PHP...?? dauf 8 150 05-04-2013 03:59 AM
Last Post: idrus.samury
  [Tutor] Membuat MP3 Player Pada Website dengan php Lucious Lawliet 18 264 05-01-2013 05:41 PM
Last Post: kenta
  Mudah Membuat Thumbnail Dengan phpThumb Cruz3N 2 1,262 04-29-2013 07:47 PM
Last Post: CodeSearcher
  [Tutor] membuat website bagian 2 dellacroug 13 313 04-29-2013 03:27 PM
Last Post: facl3ss
  Membuat License php by domain rydcenter 5 164 04-27-2013 04:31 PM
Last Post: acne007
  [Tutor] [PHP] Simple deadline hakimoxz 3 144 04-23-2013 06:56 AM
Last Post: hakimoxz
Question bagaimana membuat table berulang?? dauf 3 85 04-04-2013 02:00 PM
Last Post: dauf
Question [Solved] Fungsi Untuk PHP Shell abuabu_hat10 6 187 03-12-2013 01:53 PM
Last Post: abuabu_hat10
  membuat cuplikan artikel dengan php wenkhairu 7 2,741 02-27-2013 10:06 PM
Last Post: chiboga

Users Browsing
1 Guest(s)

  • Contact Us
  • devilzc0de
  • Return to Top
  • Mobile Version
  • RSS Syndication
  • Help
Current time: 05-25-2013, 11:09 PM Powered By MyBB, © 2002-2013 MyBB Group. Theme created by Justin S. | Mixed By Chaer.Newbie | Fixed By Aditya

USING THIS SITE INDICATES THAT YOU HAVE READ AND ACCEPT OUR TERMS. IF YOU DO NOT ACCEPT THESE TERMS, YOU ARE NOT AUTHORIZED TO USE THIS SITE