|
|
|
แสดงกิจกรรมบนปฏิทิน calendar event แบบหลายวัน โชว์เป็นสีถ้ามีกิจกรรม |
|
|
|
|
|
|
|
ผมมีกิจกรรมแบ่งเป็นวันเริ่มต้น และวันสิ้นสุด เก็บในฐานข้อมูลคนละฟิลด์ ทีนี้ต้องการสร้างปฏิทินให้แสดง เป็นสี คือ ถ้าวันใหนมีกิจกรรมตรงกับวันที่ในฐานข้อมูลก็ให้แสดงเป็นสีฟ้า เป็นต้น แต่ตอนนี้ทำไม่ได้ครับ แสดงแค่วันเดียวได้ แต่เป็นช่วงวันที่ไม่ได้ครับ นี่เป็นโค้ดของผมครับ รบกวนด้วยครับ
Code (PHP)
<?
include'inc/connect_db.php';
echo "<html>";
echo "<head>";
echo "<link href="mystyle.css" rel="stylesheet" type="text/css" />";
echo "</head>";
echo "<body>";
echo "<table width="100%" cellpadding="0" cellspacing="0" bordercolor="#FFFFFF" bordercolorlight="#999999" bordercolordark="#FFFFFF" bgcolor="#E0E0E0">";
echo "<TR><TD>";
$GoToDay = $_GET['txtDay'];
//echo $GoToDay;
if (!empty($GoToDay)) {
$StartDate=date("m/d/y",strtotime ("$GoToDay"));
} else if (empty($StartDate)) $StartDate=date("m/d/y");
echo WriteMonth($StartDate);
function WriteMonth($StartDate)
{
$thaimonth=array("มค.","กพ.","มีค.","เมย.","พค.","มิย.","กค.","สค.","กย.","ตค.", "พย.","ธค.");
$WriteMonth="";
$CurrentDate=date("m/1/y", strtotime ("$StartDate"));
//echo $CurrentDate;
$setMonth=date("m",strtotime ($CurrentDate));
$todaysDate=date("j",strtotime(date("m/d/y")));
$mmon=date("m",strtotime ($CurrentDate));
$myear=date("Y",strtotime ($CurrentDate));
$noOfDays=date("t",strtotime ($CurrentDate));
//echo $noOfDays;
$WriteMonth.="";
$WriteMonth.="<table width="100%" border="1" cellpadding="0" cellspacing="0" bordercolor="#FFFFFF" bordercolorlight="#999999" bordercolordark="#FFFFFF" >
<tr>
<td colspan="2" align="left" class="title_bg_text_no_center_blue">";
$WriteMonth.="<a href="?txtDay=".date("m/1/y", strtotime ("$CurrentDate -1 months"))." " class='textwhite'><<เดือนก่อนหน้า</a></td>
<td colspan="3" align="center" class="title_bg_text_no_center_blue" ><strong>".$thaimonth[date("m", strtotime ($StartDate)) - 1]." ".(date("Y",strtotime ($StartDate)) + 543);
$WriteMonth.="</strong></td>
<td colspan="2" align="right" class="title_bg_text_no_center_blue" >";
$WriteMonth.="<a href="?txtDay=".date("m/1/y", strtotime ("$StartDate +1 months"))."" class='textwhite'>เดือนถัดไป>></a>";
$WriteMonth.="</td></tr>
<tr>";
$WriteMonth.="<td align="center" valign="top" background="dayBg.gif" height="25" width="14%"><B><font color="#000066">อา.</font></B></td>";
$WriteMonth.="<td align="center" valign="top" background="dayBg.gif" height="25" width="14%"><B><font color="#000066">จ.</font></B></td>";
$WriteMonth.="<td align="center" valign="top" background="dayBg.gif" height="25" width="14%"><B><font color="#000066">อ.</font></B></td>";
$WriteMonth.="<td align="center" valign="top" background="dayBg.gif" height="25" width="14%"><B><font color="#000066">พ.</font></B></td>";
$WriteMonth.="<td align="center" valign="top" background="dayBg.gif" height="25" width="14%"><B><font color="#000066">พฤ.</font></B></td>";
$WriteMonth.="<td align="center" valign="top" background="dayBg.gif" height="25" width="14%"><B><font color="#000066">ศ.</font></B></td>";
$WriteMonth.="<td align="center" valign="top" background="dayBg.gif" height="25" width="14%"><B><font color="#000066">ส.</font></B></td>";
$WriteMonth.="</tr>";
$startMonth=date("$myear/$setMonth/01");
//echo $startMonth;
$endMonth=date("$myear/$setMonth/$noOfDays");
//echo $endMonth;
$WriteMonth .= "<tr>";
for($i=1;$i<=$noOfDays;$i++)
{
$coolmonth=date("$setMonth/$i/$myear"); //เดือนทั้งหมดของปีรูปแบบ 01/1/10 เดือน/ปี/วัน
$TBD=date("j",strtotime ($coolmonth)); //วันที่ของวันนี้
$BD=date("j",strtotime ($coolmonth)); //วันที่
$BDay=date("D",strtotime ($coolmonth)); //วัน
if ($todaysDate==$TBD)
{
$bgcolor="#004080";
$BD= "<B><font color="#B3EC80">$TBD</font></B>";
}
$sql="select * from meeting_booking where conf_status=1 and startdate='$myear-$mmon-$BD' ";
//echo $sql;
$dbname="program_meeting3";
$query=mysql_db_query($dbname, $sql);
$result=mysql_fetch_array($query);
if($result)
{
$bgcolor="#B3EC80";
$BD="<a href='?startdate=$result[startdate]&txtDay=$StartDate' class='text'>$BD</a>";
}
$BD = "<td align="center" bgcolor = "$bgcolor" height="25">$BD</td>";
/*$show=$TBD;
if($result)
{
$BD="?startdate=$result[startdate]";
}*/
switch($BDay)
{
case 'Sun':
$bgcolor="#E8EEF5";
$WriteMonth .= "$BD";
break;
case 'Mon':
$bgcolor="#E8EEF5";
if ($TBD==1) $WriteMonth .= "<td> </td>";
$WriteMonth .= "$BD";
break;
case 'Tue':
$bgcolor="#E8EEF5";
if($TBD==1) $WriteMonth .= "<td> </td><td> </td>";
$WriteMonth .= "$BD";
break;
case 'Wed':
$bgcolor="#E8EEF5";
if($TBD==1) $WriteMonth .= "<td> </td><td> </td><td> </td>";
$WriteMonth .= "$BD";
break;
case 'Thu':
$bgcolor="#E8EEF5";
if($TBD==1) $WriteMonth .= "<td> </td><td> </td><td> </td><td> </td>";
$WriteMonth .= "$BD";
break;
case 'Fri':
$bgcolor="#E8EEF5";
if($TBD==1) $WriteMonth .= "<td> </td><td> </td><td> </td><td> </td><td> </td>";
$WriteMonth .= "$BD";
break;
case 'Sat':
$bgcolor="#BCCDE2";
if($TBD==1) $WriteMonth .= "<td> </td><td> </td><td> </td><td> </td><td> </td><td>;</td>";
$WriteMonth .= "$BD";
$WriteMonth .="</tr><tr>";
break;
}
}
$WriteMonth .="</table>";
return $WriteMonth;
}
echo "</TD></TR>";
echo "</TABLE>";
echo "<BR>";
echo "</body>";
echo "</html>";
?>
Tag : PHP, MySQL
|
|
|
|
|
|
Date :
2011-02-16 11:02:24 |
By :
นาย |
View :
1047 |
Reply :
2 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ตัวนี้ผมมีแล้วครับ แต่ยังติดที่เขียนสคริปต์ของวันที่เป็นช่วงนะครับ
|
|
|
|
|
Date :
2011-02-18 14:36:26 |
By :
นาย |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 05
|