|
|
|
จะทำปฏิทินให้มันเช็ค วันที่ ในฐานข้อมูลค่ะ จะให้มันเช็นว่า ถ้า มีเหตุการณ์แล้วจะเปลี่ยนสี ช่องปฏิทิน อ่ะค่ะ ต้องเพิ่มโค๊ดตรงไหนบ้างค่ะ |
|
|
|
|
|
|
|
จะทำปฏิทินให้มันเช็ค วันที่ ในฐานข้อมูลค่ะ ต้องเพิ่มโค๊ดตรงไหนบ้างค่ะ
จะให้มันเช็นว่า ถ้า มีเหตุการณ์แล้วจะเปลี่ยนสี ช่องปฏิทิน อ่ะค่ะ
Code (PHP)
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<style type="text/css">
<!--
body { margin: 0px 0px; padding: 0px 0px}
a:link { color: #005CA2; text-decoration: none}
a:visited { color: #005CA2; text-decoration: none}
a:active { color: #0099FF; text-decoration: underline}
a:hover { color: #0099FF; text-decoration: underline}
-->
</style>
<?php
$a= date(j); // , 1 to 31
$b = date(a); // am,
$c = date(A); // AM,
$d = date(B); // Swatch Internet time 000 -999
$e = date(d); // , 01 to 31
$f = date(D); // , sat
$g = date(F); // , November
$h = date(g); // , 1 through 12
$hh = date(G); // , 0 through 23
$i = date(h); // , 01 through 12
$j = date(H); // , 00 through 23
$k = date(i); // , 00 to 59
$l = date(I); // 0, 1 if Daylight Savings Time, 0 otherwise.
$m = date(l); // , Sunday through Saturday
$n = date(L); // 0, 1 if it is a leap year, 0 otherwise.
$o = date(m); // , 01 through 12
$p = date(M); // , Jan through Dec
$q = date(n); // , 1 through 12
$r = date(o); // Example: +0200
$s = date(r); // Example: Thu, 21 Dec 2000 16:01:07 +0200
$t = date(s); // 00 through 59
$u = date(S); // st, nd, rd or th. Works well with j
$v = date(t); // 28 through 31
$w = date(T); // time zoneseting Examples: EST, MDT ...
$x = date(u); // See also time()
$y = date(w); // 0 (for Sunday) through 6 (for Saturday)
$z = date(W); // Example: 42 (the 42nd week in the year)
$aa = date(y); // Examples: 99 or 03
$bb = date(Y); // Examples: 1999 or 2003
$cc = date(z);
$dd = date(Z);
if(!$mon){
$mon = $o ;
}else{
$mon = $mon ;
}
if(!$year){
$year = $bb ;
}else{
$year = $year;
}
$firstday = mktime(0,0,0,$mon,1,$bb);
$firstdays = date('w',$firstday);
$lastdays = date('t',$firstday);
$year_view = date('Y',$firstday)+543;
$mon_view = date('m',$firstday);
echo"
<script>
function d_s( su , mnp){
if(mnp == 'm'){
document.dat_form.mon.value = su - 1 ;
}else{
document.dat_form.mon.value = su + 1 ;
}
document.dat_form.submit();
}
</script>
<div>
<form name=dat_form action='$PHP_SELF' method=post>
<input type=hidden name=mon value=''>
<table align=center border=0 width=98%>
<tr>
<td colspan=2 align=left><a href=\"javascript:d_s($mon,'m')\"> << เดือนก่อนหน้า </a></td>
<td colspan=3 align=center><font size=6><strong>$mon_view - $year_view </strong></font></td>
<td colspan=2 align=right><a href=\"javascript:d_s($mon,'p')\"> เดือนถัดไป >> </a></td>
</tr>
</form>
<tr bgcolor=#e6dd4e height=25 align=center>
<td width=14%><font color=#FF3366>อาทิตย์</font></td>
<td width=14%>จันทร์</td>
<td width=14%>อังคาร</td>
<td width=14%>พุธ</td>
<td width=14%>พฤหัสบดี</td>
<td width=14%>ศุกร์</td>
<td width=14%><font color=#666699>เสาร์</font></td>
</tr>
<tr align=right>";
////
for($i = 0; $i < 7 ; $i++){
if($firstdays == $i){
break;
}
else{
echo"<td height=77 background=images/whitetd.png> </td>"; // null day before $i
}
$week++;
}
for($i=1; $i<=$lastdays ;$i++){
if($week % 7 == 0){
echo"</tr>
<tr>";
}
if($a == $i){
$bgcolor = ""; //background color for <td> in today
}else{
$bgcolor = ""; //background color for <td> not today
}
if($week%7==0){
echo"<td height=77 background=images/pinktd.png $bgcolor><a href=\"empPageEvent.php?cy=$year_view&cm=$mon_view&cd=$i\">$i</a></td>";
}else if($week%7==6){
echo"<td height=77 background=images/purpletd.png $bgcolor><a href=\"empPageEvent.php?cy=$year_view&cm=$mon_view&cd=$i\">$i</a></td>";
}else{ //
echo"<td height=77 background=images/greenlighttd.png $bgcolor><a href=\"empPageEvent.php?cy=$year_view&cm=$mon_view&cd=$i\">$i</a></td>";
}
$week++;
}
while($week%7!=0){
echo"<td height=77 background=images/whitetd.png> </td>"; // null day after $i
$week++;
}
echo"</tr>
</table>
";
?>
Tag : PHP, MySQL, HTML/CSS
|
|
|
|
|
|
Date :
2012-09-08 16:16:51 |
By :
plah0078 |
View :
1370 |
Reply :
18 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ช่วยที่ค่ะ ขอบคุณ
|
|
|
|
|
Date :
2012-09-08 20:48:57 |
By :
plah0078 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Date :
2012-09-09 02:02:06 |
By :
plah0078 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
รอคำตอบอยู่ค่ะ
|
|
|
|
|
Date :
2012-09-09 17:17:29 |
By :
plah0078 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Code
<?php
$year = 2012;
$mon = 9;
$year_month = "$year-$mon";
mysql_connect('localhost','root','pass');
mysql_select_db('test');
mysql_query('set names utf8');
$rs = mysql_query("select date_format(event_date,'%d') as event_date from tb where date_format(event_date,'%Y-%c') = $year_month ");
$event_dates = array();
while ($r = mysql_fetch_assoc($rs))
$event_dates[] = $r['event_date'];
?>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<style type="text/css">
<!--
body { margin: 0px 0px; padding: 0px 0px}
a:link { color: #005CA2; text-decoration: none}
a:visited { color: #005CA2; text-decoration: none}
a:active { color: #0099FF; text-decoration: underline}
a:hover { color: #0099FF; text-decoration: underline}
-->
</style>
<?php
$a= date(j); // , 1 to 31
$b = date(a); // am,
$c = date(A); // AM,
$d = date(B); // Swatch Internet time 000 -999
$e = date(d); // , 01 to 31
$f = date(D); // , sat
$g = date(F); // , November
$h = date(g); // , 1 through 12
$hh = date(G); // , 0 through 23
$i = date(h); // , 01 through 12
$j = date(H); // , 00 through 23
$k = date(i); // , 00 to 59
$l = date(I); // 0, 1 if Daylight Savings Time, 0 otherwise.
$m = date(l); // , Sunday through Saturday
$n = date(L); // 0, 1 if it is a leap year, 0 otherwise.
$o = date(m); // , 01 through 12
$p = date(M); // , Jan through Dec
$q = date(n); // , 1 through 12
$r = date(o); // Example: +0200
$s = date(r); // Example: Thu, 21 Dec 2000 16:01:07 +0200
$t = date(s); // 00 through 59
$u = date(S); // st, nd, rd or th. Works well with j
$v = date(t); // 28 through 31
$w = date(T); // time zoneseting Examples: EST, MDT ...
$x = date(u); // See also time()
$y = date(w); // 0 (for Sunday) through 6 (for Saturday)
$z = date(W); // Example: 42 (the 42nd week in the year)
$aa = date(y); // Examples: 99 or 03
$bb = date(Y); // Examples: 1999 or 2003
$cc = date(z);
$dd = date(Z);
if(!$mon){
$mon = $o ;
}else{
$mon = $mon ;
}
if(!$year){
$year = $bb ;
}else{
$year = $year;
}
$firstday = mktime(0,0,0,$mon,1,$bb);
$firstdays = date('w',$firstday);
$lastdays = date('t',$firstday);
$year_view = date('Y',$firstday)+543;
$mon_view = date('m',$firstday);
echo"
<script>
function d_s( su , mnp){
if(mnp == 'm'){
document.dat_form.mon.value = su - 1 ;
}else{
document.dat_form.mon.value = su + 1 ;
}
document.dat_form.submit();
}
</script>
<div>
<form name=dat_form action='$PHP_SELF' method=post>
<input type=hidden name=mon value=''>
<table align=center border=0 width=98%>
<tr>
<td colspan=2 align=left><a href=\"javascript:d_s($mon,'m')\"> << เดือนก่อนหน้า </a></td>
<td colspan=3 align=center><font size=6><strong>$mon_view - $year_view </strong></font></td>
<td colspan=2 align=right><a href=\"javascript:d_s($mon,'p')\"> เดือนถัดไป >> </a></td>
</tr>
</form>
<tr bgcolor=#e6dd4e height=25 align=center>
<td width=14%><font color=#FF3366>อาทิตย์</font></td>
<td width=14%>จันทร์</td>
<td width=14%>อังคาร</td>
<td width=14%>พุธ</td>
<td width=14%>พฤหัสบดี</td>
<td width=14%>ศุกร์</td>
<td width=14%><font color=#666699>เสาร์</font></td>
</tr>
<tr align=right>";
////
for($i = 0; $i < 7 ; $i++){
if($firstdays == $i){
break;
}
else{
echo"<td height=77 background=images/whitetd.png> </td>"; // null day before $i
}
$week++;
}
for($i=1; $i<=$lastdays ;$i++){
if($week % 7 == 0){
echo"</tr>
<tr>";
}
if($week%7==0){
$style = ' background="images/pinktd.png" ';
}else if($week%7==6){
$style = ' background="images/purpletd.png" ';
}else{
$style = ' background="images/greenlighttd.png" ';
}
if (in_array($i,$event_dates))
style .= ' style="border:solid red 1px;" ';//แสดงกรอบสีแดงถ้ามีเหตุการณ์
echo "<td height=77 $style><a href=\"empPageEvent.php?cy=$year_view&cm=$mon_view&cd=$i\">$i</a></td>";
$week++;
}
while($week%7!=0){
echo"<td height=77 background=images/whitetd.png> </td>"; // null day after $i
$week++;
}
echo"</tr>
</table>
";
?>
|
ประวัติการแก้ไข 2012-09-09 18:01:47 2012-09-09 18:07:42
|
|
|
|
Date :
2012-09-09 18:00:46 |
By :
num |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ขอบคุณ คุณ num มากๆ จ้าาา เดียวลองเอาไปใช้ดูแล้วจะมา แจ้งผล ค่ะ
|
|
|
|
|
Date :
2012-09-09 20:35:14 |
By :
plah0078 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
บอกตรงๆ คือ แก้ไม่เป็น อ่ะค่ะ
ในฐานข้อมูล ใน table มีข้อมูล
========================
CData_Date | Event_Title
2012-09-10 | xxxxxxxxxx
2012-09-12 | xxxxxxxxxx
========================
งงตรงนี้ค่ะ
Code (PHP)
$rs = mysql_query("select date_format(event_date,'%d') as event_date from tb where date_format(event_date,'%Y-%c') = $year_month ");
|
|
|
|
|
Date :
2012-09-09 21:19:40 |
By :
plah0078 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
$rs = mysql_query("select date_format(CData_Date,'%d') as event_date from tb where date_format(CData_Date,'%Y-%c') = $year_month ");
แก้ไขชื่อ column ครับ
%d คือวันที่ เช่น 31
%Y-%c คือปีคศต่อกับเดือน เช่น 2012-9
แต่มาตรฐานโดยทั่วไปของ database ไม่ควรทำเป็นตัวเล็กและใหญ่ครับ ทั่วไปจะเป็นตัวเล็กอย่างเดียว
แต่ทำเป็นตัวเล็กและใหญ่ก็ไม่ผิด แต่อาจจะทำให้ค้นหาไม่พบหรือเขียนคำสั่งตัวเล็กตัวใหญ่ไม่ถูก
|
|
|
|
|
Date :
2012-09-09 21:32:47 |
By :
num |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ขอบคุณมากค่ะ จะไปปรับแก้ไขตามนี้ค่ะ
|
|
|
|
|
Date :
2012-09-09 21:53:31 |
By :
plah0078 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
แก้ไขตามที่บอกแล้วค่ะ มันยังไม่มีกรอบสีแดงขึ้นที่วันที่ 10 และ 12 เลยค่ะ
|
ประวัติการแก้ไข 2012-09-09 22:02:12
|
|
|
|
Date :
2012-09-09 21:57:49 |
By :
plah0078 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var_dump($event_dates); ดูครับว่ามีค่าอะไรบ้าง
|
|
|
|
|
Date :
2012-09-09 22:29:50 |
By :
num |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ออกมาแค่ นี้ ค่ะ
array(0) { }
|
|
|
|
|
Date :
2012-09-09 22:47:45 |
By :
plah0078 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
$rs = mysql_query("select date_format(CData_Date,'%d') as event_date from tb where date_format(CData_Date,'%Y-%c') = '$year_month' ");
สงสัยลืมใส่ '$year_month' ครับ แฮะๆ
*-*
|
|
|
|
|
Date :
2012-09-10 09:06:25 |
By :
num |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ออกแล้ว
ขอบคุณมากน่ะค่ะ
|
ประวัติการแก้ไข 2012-09-10 19:06:46
|
|
|
|
Date :
2012-09-10 09:57:03 |
By :
plah0078 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ถามอีกนิดค่ะ พี่ num
ถ้าเรา จะให้ มีชื่อ Event แสดงในช่องตารางด้วยหล่ะค่ะ
|
|
|
|
|
Date :
2012-09-11 20:57:46 |
By :
plah0078 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Code
<?php
$year = 2012;
$mon = 9;
$year_month = "$year-$mon";
mysql_connect('localhost','root','pass');
mysql_select_db('test');
mysql_query('set names utf8');
$rs = mysql_query("select Event_Title,date_format(CData_Date,'%d') as event_date from tb where date_format(CData_Date,'%Y-%c') = '$year_month' ");
$events = array();
while ($r = mysql_fetch_assoc($rs)){
$date = $r['event_date'];
if (empty($events[$date]))
$events[$date] = array();
$events[$date][] = $r['Event_Title'];
}
?>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<style type="text/css">
<!--
body { margin: 0px 0px; padding: 0px 0px}
a:link { color: #005CA2; text-decoration: none}
a:visited { color: #005CA2; text-decoration: none}
a:active { color: #0099FF; text-decoration: underline}
a:hover { color: #0099FF; text-decoration: underline}
-->
</style>
<?php
$a= date(j); // , 1 to 31
$b = date(a); // am,
$c = date(A); // AM,
$d = date(B); // Swatch Internet time 000 -999
$e = date(d); // , 01 to 31
$f = date(D); // , sat
$g = date(F); // , November
$h = date(g); // , 1 through 12
$hh = date(G); // , 0 through 23
$i = date(h); // , 01 through 12
$j = date(H); // , 00 through 23
$k = date(i); // , 00 to 59
$l = date(I); // 0, 1 if Daylight Savings Time, 0 otherwise.
$m = date(l); // , Sunday through Saturday
$n = date(L); // 0, 1 if it is a leap year, 0 otherwise.
$o = date(m); // , 01 through 12
$p = date(M); // , Jan through Dec
$q = date(n); // , 1 through 12
$r = date(o); // Example: +0200
$s = date(r); // Example: Thu, 21 Dec 2000 16:01:07 +0200
$t = date(s); // 00 through 59
$u = date(S); // st, nd, rd or th. Works well with j
$v = date(t); // 28 through 31
$w = date(T); // time zoneseting Examples: EST, MDT ...
$x = date(u); // See also time()
$y = date(w); // 0 (for Sunday) through 6 (for Saturday)
$z = date(W); // Example: 42 (the 42nd week in the year)
$aa = date(y); // Examples: 99 or 03
$bb = date(Y); // Examples: 1999 or 2003
$cc = date(z);
$dd = date(Z);
if(!$mon){
$mon = $o ;
}else{
$mon = $mon ;
}
if(!$year){
$year = $bb ;
}else{
$year = $year;
}
$firstday = mktime(0,0,0,$mon,1,$bb);
$firstdays = date('w',$firstday);
$lastdays = date('t',$firstday);
$year_view = date('Y',$firstday)+543;
$mon_view = date('m',$firstday);
echo"
<script>
function d_s( su , mnp){
if(mnp == 'm'){
document.dat_form.mon.value = su - 1 ;
}else{
document.dat_form.mon.value = su + 1 ;
}
document.dat_form.submit();
}
</script>
<div>
<form name=dat_form action='$PHP_SELF' method=post>
<input type=hidden name=mon value=''>
<table align=center border=0 width=98%>
<tr>
<td colspan=2 align=left><a href=\"javascript:d_s($mon,'m')\"> << เดือนก่อนหน้า </a></td>
<td colspan=3 align=center><font size=6><strong>$mon_view - $year_view </strong></font></td>
<td colspan=2 align=right><a href=\"javascript:d_s($mon,'p')\"> เดือนถัดไป >> </a></td>
</tr>
</form>
<tr bgcolor=#e6dd4e height=25 align=center>
<td width=14%><font color=#FF3366>อาทิตย์</font></td>
<td width=14%>จันทร์</td>
<td width=14%>อังคาร</td>
<td width=14%>พุธ</td>
<td width=14%>พฤหัสบดี</td>
<td width=14%>ศุกร์</td>
<td width=14%><font color=#666699>เสาร์</font></td>
</tr>
<tr align=right>";
////
for($i = 0; $i < 7 ; $i++){
if($firstdays == $i){
break;
}
else{
echo"<td height=77 background=images/whitetd.png> </td>"; // null day before $i
}
$week++;
}
for($i=1; $i<=$lastdays ;$i++){
if($week % 7 == 0){
echo"</tr>
<tr>";
}
if($week%7==0){
$style = ' background="images/pinktd.png" ';
}else if($week%7==6){
$style = ' background="images/purpletd.png" ';
}else{
$style = ' background="images/greenlighttd.png" ';
}
$event_titles = '';
if (array_key_exists($i,$events)){
$style .= ' style="border:solid red 1px;" ';//แสดงกรอบสีแดงถ้ามีเหตุการณ์
foreach($events as $number=>$event_title)
$event_titles .= ($number+1).'. '.$event_title.'<br>';
}
echo "<td height=77 $style><a href=\"empPageEvent.php?cy=$year_view&cm=$mon_view&cd=$i\">$i $event_titles</a></td>";
$week++;
}
while($week%7!=0){
echo"<td height=77 background=images/whitetd.png> </td>"; // null day after $i
$week++;
}
echo"</tr>
</table>
";
?>
|
|
|
|
|
Date :
2012-09-11 21:22:59 |
By :
num |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ขอบคุณมากๆ ค่ะ
|
|
|
|
|
Date :
2012-09-12 08:38:00 |
By :
plah0078 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
มันขึ้นเป็นแบบนี้อ่าค่ะ
ออกตรงช่องแล้วค่ะ แต่ไม่เป็นชื่อ
23. Array
10. Array
29. Array
28. Array
12. Array
25. Array
13. Array
เลขหน้า Array ตั้งแต่บรรทัดที่ 2ลงมา มันคือวันที่ ของวันที่มี event ค่ะ เหมือนใกล้จะออกแล้ว
|
ประวัติการแก้ไข 2012-09-12 09:41:33
|
|
|
|
Date :
2012-09-12 09:26:25 |
By :
plah0078 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 03
|