GORAGOD.com
freelance, web developer, web designer, hosting, domain name
Home
Host & Domain
Portfolio
บวก ลบ เวลาในฐานข้อมูล
Home
Forum
บวก ลบ เวลาในฐานข้อมูล
ploen
รบกวนสักนิดครับ พอดีมีปัญหาเรื่องการ บวก ลบ เวลา ในฐานข้อมูลครับ เก็บเวลา ไว้ในตาราง timein และ timeout จะนำมาคำนวณได้ แบบไหนบ้างครับ
ขอดูตัวอย่างด้วย ขอบคุณครับ
niti
http://www.goragod.com/...;module=forum-search
มีครบเลยครับ
ในส่วนตัวผมดึงออกมาก่อนหรือคำนวณก่อนแล้วค่อยนำเข้าครับ
นี้เป็นตัวอย่างครับ
function convert_date($str) {
$d = substr($str, 8, 2);
$m = substr($str, 5, 2);
$y = substr($str, 0, 4);
$y = $y + 543;
$h = substr($str, 11, 5);
$s = substr($str, 14, 2);
$result = $d.'-'.$m.'-'.$y.' '.$h;
return $result;
}
goragod
ถ้าต้องการเก็บเวลา เพื่อใช้ในการคำนวณช่วงเวลา ใช้ ข้อมูลชนิดตัวเลขเลยดีกว่ามั้ย
ให้ timein และ timeout เก็บเวลาในรูปตัวเลข mktime จะได้นำมาคำนวณหา ความแตกต่างกันได้เลย
หลายๆคนชอบเก็บเวลาเป็นชนิด DATETIME แต่หารู้ไม่ว่า พอเก็บข้อมูลเป็นชนิดนี้แล้ว การนำมาใช้งานอาจยากกว่าการเก็บเป็นตัวเลข mktime (ปกติผมเก็บเวลาเป็น mktime)
การเลือกเก็บ เป็นข้อมูลชนิดไหน ก็ขึ้นอยู่กับลักษณะการนำไปใช้งานต่อครับ ถ้าเราจำเป็นต้องคำนวณวันที่ ด้วย MySQL เราคงหลีกเลี่ยงที่จะใช้ข้อมูลชนิด DATETIME ไม่ได้ แต่หากเรา ต้องการนำข้อมูลมาเปรียบเทียบ ภายนอกด้วย PHP ก็ควรต้องเก็บเป็นตัวเลข เนื่องจากมันจะคำนวณด้วย PHP ได้ง่ายกว่า
ploen
// พอดีไปหาที่ google มา ใช้ได้ครับ เผื่อใครอยากเอาไปใช้ ขอบคุณครับ
$start="$timein";
$end="$timeout";
$dif=date("U",mktime(date(substr($end,0,2)-substr($start,0,2)),date(substr($end,3,2)-substr($start,3,2)),date(substr($end,6,2)-substr($start,6,2))));
$time=date('H:i:s', $dif);
echo "$time";
ความคิดเห็น
รายละเอียด
ไฟล์อัปโหลด ชนิด jpg, jpeg ขนาดไฟล์ไม่เกิน 1024
^
มีครบเลยครับ
ในส่วนตัวผมดึงออกมาก่อนหรือคำนวณก่อนแล้วค่อยนำเข้าครับ
นี้เป็นตัวอย่างครับ
function convert_date($str) {
$d = substr($str, 8, 2);
$m = substr($str, 5, 2);
$y = substr($str, 0, 4);
$y = $y + 543;
$h = substr($str, 11, 5);
$s = substr($str, 14, 2);
$result = $d.'-'.$m.'-'.$y.' '.$h;
return $result;
}
ให้ timein และ timeout เก็บเวลาในรูปตัวเลข mktime จะได้นำมาคำนวณหา ความแตกต่างกันได้เลย
หลายๆคนชอบเก็บเวลาเป็นชนิด DATETIME แต่หารู้ไม่ว่า พอเก็บข้อมูลเป็นชนิดนี้แล้ว การนำมาใช้งานอาจยากกว่าการเก็บเป็นตัวเลข mktime (ปกติผมเก็บเวลาเป็น mktime)
การเลือกเก็บ เป็นข้อมูลชนิดไหน ก็ขึ้นอยู่กับลักษณะการนำไปใช้งานต่อครับ ถ้าเราจำเป็นต้องคำนวณวันที่ ด้วย MySQL เราคงหลีกเลี่ยงที่จะใช้ข้อมูลชนิด DATETIME ไม่ได้ แต่หากเรา ต้องการนำข้อมูลมาเปรียบเทียบ ภายนอกด้วย PHP ก็ควรต้องเก็บเป็นตัวเลข เนื่องจากมันจะคำนวณด้วย PHP ได้ง่ายกว่า
$start="$timein";
$end="$timeout";
$dif=date("U",mktime(date(substr($end,0,2)-substr($start,0,2)),date(substr($end,3,2)-substr($start,3,2)),date(substr($end,6,2)-substr($start,6,2))));
$time=date('H:i:s', $dif);
echo "$time";