|
|
|
เกี่ยวกับเลขบนปฏิทินครับขอความช่วยเหลือนิดนึง ตอนนี้ผมลองทำปฏิทินได้แล้วเป็นแบบ php ธรรมดา |
|
|
|
|
|
|
|
ตอนนี้ผมลองทำปฏิทินได้แล้วเป็นแบบ php ธรรมดาไม่ได้เลิศหรูอะไร
แต่ติดนิดนึงตรงที่ ตัวเลขที่เป็นเลขหลักเดียว เช่น วันที่ 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 อยากให้มัน Run ออกมาเป็นแบบ 2 หลัก คือ
01 , 02 , 03 , 04 , 05 , 06 , 07 , 08 , 09
จุดประสงค์ผมกะว่า จะทำ Link ไปใส่ในช่องของวันที่แต่ละวัน ประมาณว่าจะทำเป็นปฏิทินที่เก็บข้อมูลว่าเจ้าหน้าที่ติดตั้งของบริษัท
ออกไปทำอะไรมา ณ วัน นั้นๆ บนปฏิทินน่ะครับ แล้วจะเก็บ วันที่ลง Database MySQL ละไปเห็นว่าวันที่ใน MySQL มันเป็นแบบ
ปีค.ศ - เดือน - วัน เช่น 2012-01-09 พอดีเลขบนปฏิทินมันเป็นเลข 2012-1-9 (คือเลข 1 ถึง 9 มันเป็นเลขหลักเดียว)
Code ผมเป็นดังนี้ครับ
Code (PHP)
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>EON-GROUP Report System ตาราง Install</title>
<link rel="stylesheet" type="text/css" href="../css/body_bg.css" />
<script>
function goLastMonth(month,year) {
if (month == 1) {
--year
month = 13;
}
document.location.href = "<?php $_SERVER['PHP_SELF']; ?>?month="+(month-1)+"&year="+year;
}
function goNextMonth(month,year) {
if (month == 12) {
++year
month = 0;
}
document.location.href = "<?php $_SERVER['PHP_SELF']; ?>?month="+(month+1)+"&year="+year;
}
</script>
</head>
<body>
<p>
<?php
if (isset($_GET['day'])) {
$day = $_GET['day'];
}else{
$day = date("d"); //ตัวอย่างใช้ $day = date("j")
}
if (isset($_GET['month'])) {
$month = $_GET['month'];
//echo $month;
}else {
$month = date("m"); // ตัวอย่างใช้ $month = date("n")
}
if (isset($_GET['year'])) {
$year = $_GET['year'];
}else {
$year = date("Y"); // ตัวอย่างใช้ $year = date("Y")
}
// $day = date("d"); //เอาค่าวันปัจจุบันใส่ $day
// $month = date("m"); //เอาค่าเดือนปัจจุบันใส่ $month
// $year = date("Y"); //เอาค่าปีปัจจุบันใส่ $year
// $thai_year = $year+543;
$currentTimeStamp = strtotime("$year-$month-$day"); //เอาค่าที่ได้จากข้างต้นมาเปลี่ยนเป็นรูปแบบวันเวลา เช่น 2012-01-10
$monthName = date("F", $currentTimeStamp); // เอาค่าชื่อเดือนปัจจุบันใส่ $month
$numDays = date("t", $currentTimeStamp); // เอาค่าจำนวนวันในแต่ละเดือนใส่ $numDays
$counter = 0; // ตัวแปรใช้สำหรับนับวัน
// echo "จำนวนวันในเดือนนี้ ". $numDays."<br>";
//echo "ตัวแปร month คือ {$month} <br> ตัวแปร year คือ {$year}";
/*อธิบาย-----------
$currentTimeStamp = strtotime("$year-$month-$day");
เป็นคำสั่งเปลี่ยนค่าในตัวแปร $year $month $day ให้เป็นค่า timestamp
$monthName = date ("F", $currentTimeStamp);
เป็นคำสั่งเอาชื่อเดือนนั้นๆมาใส่ในตัวแปรชื่อ $monthName "F" เป็นการแสดงชื่อเดือนภาษาอังกฤษแบบเต็ม
$numDays = date("t", $currentTimeStamp);
เป็นคำสั่งหาจำนวนวันในเดือนนั้นๆมาใส่ในตัวแปร $numDays
$count = 0;
เป็นการ Set ค่า ตัวแปร count เพื่อนับจำนวนช่องตาราง
----------------*/
?>
</p>
<p><h1 align="center"><font color="darkblue">ตาราง Install</font></h1>
<p><font size="2"><a href="../main_menu.php">กลับเมนูหลัก</a></font></p>
<p>
</p>
</p>
<table width="716" border="1" cellspacing="0" cellpadding="0" align="center" >
<tr>
<td width="100" align="left"><input name="previous" style="width:100px" type="button" value="< Previous" onclick="goLastMonth(<?php echo $month.",".$year ; ?>)"></td>
<td colspan="5" align="center" bgcolor="#7B9EBD"><font color="white"><?php echo $monthName.", ".$year; ?></font></td>
<td width="100" align="right"><input name="previous" style="width:100px"type="button" value="Next >" onclick="goNextMonth(<?php echo $month.",".$year ; ?>)"></td>
</tr>
<tr>
<td width="100" bgcolor="#FF9D9D">Sun</td>
<td width="100" bgcolor="#FFFFCC">Mon</td>
<td width="100" bgcolor="#FFCCFF">Tue</td>
<td width="100" bgcolor="#C1FFC1">Wed</td>
<td width="100" bgcolor="#FFD2A6">Thu</td>
<td width="100" bgcolor="#AEC9E3">Fri</td>
<td width="100" bgcolor="#DDBBFF">Sat</td>
</tr>
<?php
echo "<tr>";
for ($i = 1; $i <$numDays+1; $i++, $counter++) { //--- loop ทำแถวใหม่ (row) สำหรับวันในเดือน
$timeStamp = strtotime("$year-$month-$i"); //--- เก็บค่า timestamp ของแต่ละวันใน loop
if ($i == 1) { //---เงื่อนไข หากเป็นวันที่ 1
$firstDay = date("w", $timeStamp); //เอา
//--- loop ทำที่ว่าง ถ้าหากไม่ใช่วันแรก ---
for ($j = 0; $j < $firstDay; $j++, $counter++) {
//ที่ว่าง
echo "<td> </td>";
}
}
if ($counter %7 == 0) { //เงื่อนไข หากตัวนับมีค่าเป็น 7 ให้ขึ้นบรรทัดใหม่ (ก็คือใน 1 แถวแนวนอน จะมี 7 ช่อง ก็คือ 7 วัน)
echo "</tr><tr>";
}
echo "<td align='right' height='80' valign='top'>".$i."</td>"; //ตัวแปร $i คือ เลขวันที่ในเดือนนั้นๆ
}
echo "</tr>";
?>
</table>
</body>
</html>
Tag : PHP
|
|
|
|
|
|
Date :
2012-01-10 17:41:37 |
By :
pantatonic |
View :
1285 |
Reply :
2 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Code (PHP)
$month = sub_str("0".$_GET['month'],-2,2);
ใส่ 0
|
|
|
|
|
Date :
2012-01-10 21:30:20 |
By :
webmaster |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Code (PHP)
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>EON-GROUP Report System ตาราง Install</title>
<link rel="stylesheet" type="text/css" href="../css/body_bg.css" />
<script>
function goLastMonth(month,year) {
if (month == 1) {
--year
month = 13;
}
document.location.href = "<?php $_SERVER['PHP_SELF']; ?>?month="+(month-1)+"&year="+year;
}
function goNextMonth(month,year) {
if (month == 12) {
++year
month = 0;
}
document.location.href = "<?php $_SERVER['PHP_SELF']; ?>?month="+(month+1)+"&year="+year;
}
</script>
</head>
<body>
<p>
<?php
if (isset($_GET['day'])) {
$day = $_GET['day'];
}else{
$day = date("d"); //ตัวอย่างใช้ $day = date("j")
}
if (isset($_GET['month'])) {
if($_GET['month']<"10"){
$month = "0".$_GET['month'];
}else{
$month = $_GET['month'];
}
echo $month;
}else {
$month = date("m"); // ตัวอย่างใช้ $month = date("n")
}
if (isset($_GET['year'])) {
$year = $_GET['year'];
}else {
$year = date("Y"); // ตัวอย่างใช้ $year = date("Y")
}
// $day = date("d"); //เอาค่าวันปัจจุบันใส่ $day
// $month = date("m"); //เอาค่าเดือนปัจจุบันใส่ $month
// $year = date("Y"); //เอาค่าปีปัจจุบันใส่ $year
// $thai_year = $year+543;
$currentTimeStamp = strtotime("$year-$month-$day"); //เอาค่าที่ได้จากข้างต้นมาเปลี่ยนเป็นรูปแบบวันเวลา เช่น 2012-01-10
$monthName = date("F", $currentTimeStamp); // เอาค่าชื่อเดือนปัจจุบันใส่ $month
$numDays = date("t", $currentTimeStamp); // เอาค่าจำนวนวันในแต่ละเดือนใส่ $numDays
$counter = 0; // ตัวแปรใช้สำหรับนับวัน
// echo "จำนวนวันในเดือนนี้ ". $numDays."<br>";
//echo "ตัวแปร month คือ {$month} <br> ตัวแปร year คือ {$year}";
/*อธิบาย-----------
$currentTimeStamp = strtotime("$year-$month-$day");
เป็นคำสั่งเปลี่ยนค่าในตัวแปร $year $month $day ให้เป็นค่า timestamp
$monthName = date ("F", $currentTimeStamp);
เป็นคำสั่งเอาชื่อเดือนนั้นๆมาใส่ในตัวแปรชื่อ $monthName "F" เป็นการแสดงชื่อเดือนภาษาอังกฤษแบบเต็ม
$numDays = date("t", $currentTimeStamp);
เป็นคำสั่งหาจำนวนวันในเดือนนั้นๆมาใส่ในตัวแปร $numDays
$count = 0;
เป็นการ Set ค่า ตัวแปร count เพื่อนับจำนวนช่องตาราง
----------------*/
?>
</p>
<p><h1 align="center"><font color="darkblue">ตาราง Install</font></h1>
<p><font size="2"><a href="../main_menu.php">กลับเมนูหลัก</a></font></p>
<p>
</p>
</p>
<table width="716" border="1" cellspacing="0" cellpadding="0" align="center" >
<tr>
<td width="100" align="left"><input name="previous" style="width:100px" type="button" value="< Previous" onclick="goLastMonth(<?php echo $month.",".$year ; ?>)"></td>
<td colspan="5" align="center" bgcolor="#7B9EBD"><font color="white"><?php echo $monthName.", ".$year; ?></font></td>
<td width="100" align="right"><input name="previous" style="width:100px"type="button" value="Next >" onclick="goNextMonth(<?php echo $month.",".$year ; ?>)"></td>
</tr>
<tr>
<td width="100" bgcolor="#FF9D9D">Sun</td>
<td width="100" bgcolor="#FFFFCC">Mon</td>
<td width="100" bgcolor="#FFCCFF">Tue</td>
<td width="100" bgcolor="#C1FFC1">Wed</td>
<td width="100" bgcolor="#FFD2A6">Thu</td>
<td width="100" bgcolor="#AEC9E3">Fri</td>
<td width="100" bgcolor="#DDBBFF">Sat</td>
</tr>
<?php
echo "<tr>";
for ($i = 1; $i <$numDays+1; $i++, $counter++) { //--- loop ทำแถวใหม่ (row) สำหรับวันในเดือน
$timeStamp = strtotime("$year-$month-$i"); //--- เก็บค่า timestamp ของแต่ละวันใน loop
if ($i == 1) { //---เงื่อนไข หากเป็นวันที่ 1
$firstDay = date("w", $timeStamp); //เอา
//--- loop ทำที่ว่าง ถ้าหากไม่ใช่วันแรก ---
for ($j = 0; $j < $firstDay; $j++, $counter++) {
//ที่ว่าง
echo "<td> </td>";
}
}
if ($counter %7 == 0) { //เงื่อนไข หากตัวนับมีค่าเป็น 7 ให้ขึ้นบรรทัดใหม่ (ก็คือใน 1 แถวแนวนอน จะมี 7 ช่อง ก็คือ 7 วัน)
echo "</tr><tr>";
}
echo "<td align='right' height='80' valign='top'>".$i."</td>"; //ตัวแปร $i คือ เลขวันที่ในเดือนนั้นๆ
}
echo "</tr>";
?>
</table>
</body>
</html>
ลองเอาไปแทนของคุณดูครับใช่แบบที่ต้องการไหม
|
|
|
|
|
Date :
2012-01-15 20:20:50 |
By :
โปรแกรมเมอร์ฝึกหัด |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 00
|