Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,038

HOME > PHP > PHP Forum > การหาคำนวณหาวันที่พร้อมเวลา โค้ดด้านบนนี้สามารถคำนวณหาวันที่ได้แล้ว แต่ติดตรงที่ว่าต้องคำนวณหาวันให้ได้ครึ่งวัน จะทำอย่างไรดี



 

การหาคำนวณหาวันที่พร้อมเวลา โค้ดด้านบนนี้สามารถคำนวณหาวันที่ได้แล้ว แต่ติดตรงที่ว่าต้องคำนวณหาวันให้ได้ครึ่งวัน จะทำอย่างไรดี

 



Topic : 034068

Guest




<?php $num_start_date=$row_rs_event_dayoff['start_date']; 
$num_stop_date=$row_rs_event_dayoff['stop_date']; 
list($start_year,$start_month,$start_day)=explode("-",$num_start_date);
list($stop_year,$stop_month,$stop_day)=explode("-",$num_stop_date);
$f_start=mktime(0,0,0,$start_month,$start_day,$start_year);
$f_stop=mktime(0,0,0,$stop_month,$stop_day,$stop_year);
$num_date=($f_stop-$f_start);
?>


//โค้ดที่นำมาแสดง
<?php echo (date("d",$num_date));?>


โค้ดด้านบนนี้สามารถคำนวณหาวันที่ได้แล้ว
แต่ติดตรงที่ว่าต้องคำนวณหาวันให้ได้ครึ่งวัน จะทำอย่างไรดี
ในดาต้าเบส เก็บเป็น timestamp

มีวิธีไหนบ้าง หรือแนวคิดก็ได้ค่ะ
ขอบคุณค่ะ



Tag : - - - -







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2009-11-09 11:45:07 By : bigjiw82 View : 1302 Reply : 8
 

 

No. 1



โพสกระทู้ ( 11,835 )
บทความ ( 10 )

สมาชิกที่ใส่เสื้อไทยครีเอท Hall of Fame 2012

สถานะออฟไลน์


จับลบกันใน ฐานข้อมูลเลยครับ หรือว่าใข้ datediff ของ mysql ก็ได้






Date : 2009-11-09 12:23:51 By : plakrim
 


 

No. 2

Guest


SELECT datediff( stop_date, start_date ) dif_date
FROM event_dayoff


start_date = 2009-11-03 08:00:00
stop_date= 2009-11-03 16:30:00
ผลลัพธ์ที่ได้จากฐานข้อมูล 0
ผลลัพธ์ที่จากคิดคำนวณต้องได้ 1

start_date = 2009-11-02 08:30:00
stop_date= 2009-11-03 12:00:00
ผลลัพธ์ที่ได้จากฐานข้อมูล 1
ผลลัพธ์ที่จากคิดคำนวณต้องได้ 1.5

เราจะสามารถใช้คำสั่ง mysql อย่างไร
ขอบคุณค่ะ
Date : 2009-11-09 12:35:30 By : bigjiw82
 

 

No. 3



โพสกระทู้ ( 11,835 )
บทความ ( 10 )

สมาชิกที่ใส่เสื้อไทยครีเอท Hall of Fame 2012

สถานะออฟไลน์


อุ้ย ต้องหาแบบครึ่งวันหรอ งงอะซิงานนี้

SELECT HOUR(TIMEDIFF('2009-11-03 16:30:00','2009-11-03 08:00:00')) as result;
SELECT HOUR(TIMEDIFF('2009-11-03 12:00:00','2009-11-02 08:30:00')) as result;

ลองดูละกัน ผลลัพธ์ออกมาเป็น ชั่วโมง เอาไปหาร 24 แล้วปัดเศษเอา ถ้ายังไม่ได้ เดี๋ยวค่อยว่ากันใหม่
Date : 2009-11-09 12:49:45 By : plakrim
 


 

No. 4

Guest


SELECT HOUR(TIMEDIFF('2009-11-03 12:00:00','2009-11-02 08:30:00')) as result;

$total_hour=($result/24);
echo $total_hour;
ผลลัพธ์ 1.125

นำฟังก์ชั่นการปัดเศษมาใช้ แล้วปรากฎว่า
ceil()
ผลลัพธ์ได้ 2
floor()
ผลลัพธ์ได้ 1

แต่ผลลัพธ์ที่ได้ต้องเป็น 1.5 วัน
ใน mysql มีฟังก์ชั่นอื่น ๆ หรือเปล่า
ต้องใช้เงื่อนไขเข้ามาช่วยค่ะ
ขอบคุณค่ะ
Date : 2009-11-09 13:34:24 By : bigjiw82
 


 

No. 5



โพสกระทู้ ( 11,835 )
บทความ ( 10 )

สมาชิกที่ใส่เสื้อไทยครีเอท Hall of Fame 2012

สถานะออฟไลน์


ลองใช้ round ดูไหม ถ้ายังไม่พอใจ ต้องใช้ mod ละ หาร 24 ได้เป็นวันแล้ว mod 24 ถ้าเกิน 0 ก็เป็นครึ่งวัน
Date : 2009-11-09 13:49:07 By : plakrim
 


 

No. 6



โพสกระทู้ ( 46 )
บทความ ( 0 )



สถานะออฟไลน์


ทำวันที่และชั่วโมง เพื่อให้แสดงผลลัพธ์ถูกต้องได้แล้ว

SELECT HOUR(TIMEDIFF(event_dayoff.stop_date,event_dayoff.start_date))dif_hour,DATEDIFF(event_dayoff.stop_date,event_dayoff.start_date) dif_day FROM (event_dayoff LEFT JOIN type_dayoff ON type_dayoff.type_dayoff_id=event_dayoff.type_dayoff_id)
WHERE event_dayoff.m_id = 437 ORDER BY s_id DESC


<?php $dif_hour=$row_rs_event_dayoff['dif_hour'];
$dif_day=$row_rs_event_dayoff['dif_day']+1;
if ($dif_hour%8==0){
$total_hour=$dif_day+0;
}else{
$total_hour=$dif_day+0.5;
}
?>
Date : 2009-11-10 14:15:52 By : bigjiw82
 


 

No. 7



โพสกระทู้ ( 46 )
บทความ ( 0 )



สถานะออฟไลน์


ตอนนี้เหลือการคำนวณโดยไม่ให้นับวันเสาร์-อาทิตย์ วันหยุดนักขัตฤกษ์
จะคำนวณอย่างไร หรือใช้ฟังกชั่นอะไรมาช่วยในการคำนวณ
ขอบคุณค่ะ
Date : 2009-11-11 08:44:26 By : bigjiw82
 


 

No. 8



โพสกระทู้ ( 11,835 )
บทความ ( 10 )

สมาชิกที่ใส่เสื้อไทยครีเอท Hall of Fame 2012

สถานะออฟไลน์


โอ้ววว แบบนี้ sql คงช่วยไม่ได้ ต้องหันไปใช้ php แล้วหละครับ
Date : 2009-11-11 10:21:59 By : plakrim
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : การหาคำนวณหาวันที่พร้อมเวลา โค้ดด้านบนนี้สามารถคำนวณหาวันที่ได้แล้ว แต่ติดตรงที่ว่าต้องคำนวณหาวันให้ได้ครึ่งวัน จะทำอย่างไรดี
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

Load balance : Server 02
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2025 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่