Skip to content

Counter: Counter Powered by  RedCounter Categories:

MEMBUAT CALENDER DG PHP

Membuat kalender dengan php sebetulnya tidak terlalu sulit, hanya kita paham perhitungan tahun saja. Berikut ini adalah contoh membuat calender dengan php dan cara perhitungan harinya, mudah-mudahan berguna bagi anda..?. Silahkan copy coode ini dan coba jalankan pada broser anda.

<?php
function showCalendar()
{

//Kita perlu pertama dan hari terakhir dari bulan dan hari yang sebenarnya
$today = getdate();
$firstDay = getdate(mktime(0,0,0,$today['mon'],1,$today['year']));
$lastDay = getdate(mktime(0,0,0,$today['mon']+1,0,$today['year']));

// Buat tabel dengan informasi yang diperlukan header
$out = “<”table border=’1′>”;
$out.= ‘<tr><th colspan=”7″>’.$today['month'].” – “.$today['year'].”</th></tr>”;
$out.= ‘<tr class=”days”>’;
$out.= ‘<td>Mo</td><td>Tu</td><td>We</td><td>Th</td>’;
$out.= ‘<td>Fr</td><td>Sa</td><td>Su</td></tr>’;

// Menampilkan kalender baris pertama dengan posisi benar
$out.= ‘<tr>’;
for($i=0;$i<$firstDay['wday'];$i++){
$out.= ‘<td> </td>’;
}

$actday = 0;
for($i=$firstDay['wday'];$i<7;$i++){
$actday++;
if ($actday == $today['mday']) {
$class = ‘ class=”actday”‘;
} else {
$class = ”;
}
$out.= “<td$class>$actday</td>”;
}
$out.= ‘</tr>’;

//Dapatkan berapa bulan selesai dalam bulan yang sebenarnya
$fullWeeks = floor(($lastDay['mday']-$actday)/7);
for ($i=0;$i<$fullWeeks;$i++){
$out.= ‘<tr>’;
for ($j=0;$j<7;$j++){
$actday++;
if ($actday == $today['mday']) {
$class = ‘ class=”actday”‘;
} else {
$class = ”;
}
$out.= “<td$class>$actday</td>”;
}
$out.= ‘</tr>’;
}

//Sekarang menampilkan sisa bulan
if ($actday < $lastDay['mday']){
$out.= ‘<tr>’;
for ($i=0; $i<7;$i++){
$actday++;
if ($actday == $today['mday']) {
$class = ‘ class=”actday”‘;
} else {
$class = ”;
}

if ($actday <= $lastDay['mday']){
$out.= “<td$class>$actday</td>”;
}else {
$out.= ‘<td> </td>’;
}
}
$out.= ‘</tr>’;
}
$out.= ‘</table>’;
return $out;

}
showCalendar();
?>

Sebagai pelengkap tambahkan CSS
table {
width:210px;
border:0px solid #888;
border-collapse:collapse;
}
td {
width:15px;
border-collpase:collpase;
border:1px solid #888;
text-align:right;
padding-right:4px;
}
.days{
background-color: #cccccc;
}
th {
border-collpase:collpase;
border:1px solid #888;
background-color: #bbbbbb;
text-align:center;
}
.actday{
background-color: #ff4545;
font-weight:bold;
}

Selamat Mencoba ya….?

Posted in PHP.


0 Responses

Stay in touch with the conversation, subscribe to the RSS feed for comments on this post.



Some HTML is OK

or, reply to this post via trackback.