ตรวจสอบวันเวลา

ผมมีฟอร์มที่ให้เลือกวันเวลาจากปฏิทิน คือ text box ชื่อ date1 กับ date2 ซึ่งจะเก็บในรูปวันที่และเวลา 24 ชั่วโมงกับนาที่

ผมต้องการตรวจสอบว่าถ้ากำหนดวันที่ date2 น้อยกว่า date1 ให้กลับแก้ไขโดยมีโค๊ดดังนี้ครับ 

 $date1 = date("Y-m-d G:i");// 2008-10-28 14:58
 $date2 = date("Y-m-d G:i");//2008-10-10 12:30
 $ndate1 = mktime($date1);
 $ndate2 = mktime($date2);
 if($ndate2 <= $ndate1){
 echo "<script language='javascript'>" ;
 echo "alert('ช่วงเวลาสิ้นสุดไม่ถูกต้อง กลับไปแก้ไขด้วยครับ')" ;
 echo "</script>" ;
 echo "<script language='javascript'>javascript:history.back()</script>
";
 exit();
 }

ตอนนี้มันฟ้อง  เวลาสิ้นสุดไม่ถูกต้องอย่างเดียวครับ แม้จะลองให้
date1 = 2008-10-28 14:50
date2 = 2008-10-31 10:00

ช่วยดูโค๊ดหน่อยครับว่าจะตรวจสอบอย่างไร

28 ต.ค. 2551 5 5,374

ผมไม่ได้เขียนแบบตรงๆให้นะครับ ให้ประยุกต์เอาเล็กน้อย เนื่องจากผมเห็นว่า ตัวอย่างแบบนี้จะนำไปประยุกต์ใช้ได้มากกว่าhttp://www.goragod.com/knowledge-การเปรียบเทียบวันที่ต่างกันด้วย%20javascript.html

 

#1

ส่วนถ้าเป็นการตรวจด้วย PHP มีตัวอย่างอยู่แล้วบนเว็บครับ ลองค้นหาดู

#2

แก้ไขได้แล้วครับ แต่เจอปัญหาใหม่
ผมทำระบบจองรถครับ และผมเก็บวันที่และเวลาในฐานข้อมูลดังนี้

StartDate เก็บเป็น 2008-10-28 18:00:00
EndDate เก็บเป็น  2008-10-31 06:00:00

คราวนี้จะ insert ข้อมูลใหม่ที่รับค่าจากฟอร์ม

date1 เก็บลง StartDate และ date2 เก็บลง EndDate แต่ค่าของ date1 กับ date2 มีลักษณะเป็น 2008-10-28 18:00

กำหนดให้

StartDate =2008-10-28 18:00:00
EndDate = 2008-10-31 06:00:00

คำถามคือ

1.ถ้าเป็นการจองวันนี้และเป็นรถคันเดียวในช่วงเวลา
date1=2008-10-28 19:00
date2=2008-10-28 23:00
มันจะต้องจองไม่ได้ เพราะรถคันไม่ว่าง เนื่องจากถูกใช้อยู่ จะตรวจสอบอย่างไร

2. มีหลักการอันไหมครับ นอกจากการตรวจสอบแบบนี้ หรือจะกำหนดให้จองเฉพาะช่วงที่ว่างเท่านั้น

3. ฐานข้อมูลที่เก็บวันเวลาที่จะมาตรวจสอบควรเก็บแบบ field เดียวคือ DATETIME หรือเป็น 2 field คือ DATE และ TIME

4. พอจะหาโค๊ดตัวอย่างระบบจองได้ที่ไหนบ้างครับ

รบกวนอาจารย์ด้วยครับ ผมเคยสอบถามเรื่องนี้ตั้งแต่เว็บเก่าของอาจารย์ ตอนนี้ผมต้องทำจริงๆ แล้วครับเพราะเป็นโปรเจ็คจบครับ

#3

ตอบข้อ 3 ก่อน ไม่จำเป็นครับ เนื่องจากเวลาตรวจ ต้องใช้ทั้งวันและเวลพร้อมกัน

ตอบข้อ 1 และ 2 รวมกัน ผมก็ไม่เคยทำนะ แต่ตามแนวคิดผม

1.บันทึกวันเวลาที่จอง
2.กำหนดเวลา หมดการจอง สำหรับกรณีที่จองแล้วไม่มารับรถ
3.การจองให้ตรวจ ตามข้อ 1 และ 2 รวมกัน คือ มีคนจองหรือไม่ ถ้ามี หมดเวลาหรือเปล่า
4.นอกเหนือจากนี้ให้จองได้

ส่วนข้อ 4 เนื่องจากยังไม่เคยทำก็เลยไม่เคยเห็นครับ แต่คิดว่าน่าจะหายาก เนื่องจากเฉพาะทางเกินไป ที่เคยเห็นก็มีแต่ ระบบจองห้องพัก

#4

ผมมีโปรเจ็คทำระบบจองรถตอนจบไม่รู้ว่าเหมือนกันหรือเปล่าแต่ไม่ค่อยสวยนะ

#5
ความคิดเห็น
ไฟล์อัปโหลด ชนิด jpg, jpeg ขนาดไฟล์ไม่เกิน 1024
^