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,037

HOME > PHP > PHP Forum > ดึงข้อมูลทั้งหมด ออกมาจากฐานข้อมูล เพื่อหาความต่างของวันเวลา แล้วเอามานับถอยหลัง ซึ่งมีปัญหาเกี่ยวกับ javascript



 

ดึงข้อมูลทั้งหมด ออกมาจากฐานข้อมูล เพื่อหาความต่างของวันเวลา แล้วเอามานับถอยหลัง ซึ่งมีปัญหาเกี่ยวกับ javascript

 



Topic : 096449



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



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



ตามหัวข้อนะครับ คือตามความเข้าใจของผมนะครับ ถ้าผิดพลาดยังไงช่วยแนะนำด้วยนะคับ

หลังจากที่ผม ได้ความต่างของวันเวลาแล้ว ก็จะนำตัวแปร ที่ได้ส่งมาที่ฟังก์ชั่น เพื่อให้มันนับถอยหลัง แต่ปรากฏว่า ข้อมูลที่ได้เมื่อ เข้าสู่ฟังก์ชั่น begintimer จะทำแค่รอบเดียวแล้วสิ้นสุดการทำงาน เลยกลายเป็นว่านับถอยหลังแค่ข้อมูลเดียว ซึ่งผมยังมีข้อมูลอีกหลายค่า ตามตัวอย่างเลยครับ รบกวนด้วย


ตัวเลขสีแดง คือ ผลลัพท์ที่ต้องการให้เกิดครับ
ผลลัพท์ข้อมลที่ได้


อันนี้คือ ค่า $time คับ ผมลอง echo ออกมาดู
echo ตัวแปร $time

Code (PHP)
<?php 
session_start();
 $index = 0;
function secondsTime($examTime){
	$time = explode(":", $examTime);
	$d = $time[0]*86400;
	$h = $time[1]*3600;
	$m = $time[2]*60;
	$s = $time[3]*1;
	$seconds = $d+$h+$m+$s;
	return $seconds;
//แปลงค่าเป็นวินาที
}
function checkTime($seconds){
	$day = floor($seconds/86400);//จำนวนวัน
	$hours = floor(($seconds%86400)/3600);//ชั่วโมง
	$mins = floor((($seconds%86400)%3600)/60); // จำนวน นาที
	$secs = floor(((($seconds%86400)%3600)%60)); // จำนวน วินาที
	$time = $day.":".$hours.":".$mins.":".$secs;
	return $time;
//แปลงเป็นวินาทีให้อยู่ในรูปแบบ xx:xx:xx:xx

}
function dateDiv($t1,$t2){ // ส่งวันที่ที่ต้องการเปรียบเทียบ ในรูปแบบ มาตรฐาน 2006-03-27 21:39:12
  $t1Arr=splitTime($t1);
  $t2Arr=splitTime($t2);
 
  $Time1=mktime($t1Arr["h"], $t1Arr["m"], $t1Arr["s"], $t1Arr["M"], $t1Arr["D"], $t1Arr["Y"]);
  $Time2=mktime($t2Arr["h"], $t2Arr["m"], $t2Arr["s"], $t2Arr["M"], $t2Arr["D"], $t2Arr["Y"]);
  $TimeDiv=abs($Time2-$Time1);

  $Time["D"]=intval($TimeDiv/86400); // จำนวนวัน
  $Time["H"]=intval(($TimeDiv%86400)/3600); // จำนวน ชั่วโมง
  $Time["M"]=intval((($TimeDiv%86400)%3600)/60); // จำนวน นาที
  $Time["S"]=intval(((($TimeDiv%86400)%3600)%60)); // จำนวน วินาที
 return $Time;
}
function splitTime($time){ // เวลาในรูปแบบ มาตรฐาน 2006-03-27 21:39:12 
  $timeArr["Y"]= substr($time,2,2);
  $timeArr["M"]= substr($time,5,2);
  $timeArr["D"]= substr($time,8,2);
  $timeArr["h"]= substr($time,11,2);
  $timeArr["m"]= substr($time,14,2);
  $timeArr["s"]= substr($time,17,2);
return $timeArr;
}

//------------------------------ ตัวอย่างการใช้งาน
include ("scrib/conection_DB.php");
$strSQL = "select dateL,dateS from product order by id_product asc" ;
$objQuery = mysql_query($strSQL);
//$objResult = mysql_fetch_array($objQuery) ;
 while ($objResult = mysql_fetch_array($objQuery)) {
  $t1=$objResult["dateS"];
  $t2=$objResult["dateL"];
  $time=dateDiv($t1,$t2);
		echo $time["D"] ;
		echo "วัน ";
		echo $time["H"] ;
		echo ":";
		echo $time["M"] ;
		echo ":";
		echo $time["S"] ;
		echo "<br>"; 
$seconds = secondsTime($time["D"],$time["H"],$time["M"],$time["S"]);
$time = checkTime($EndTime); 
if (!isset($_SESSION['timeend'])){ 
	unset($_SESSION['timeend']);
    $endtime = time() + $seconds; 
    $_SESSION['timeend'] = $endtime; 
} 

($_SESSION['timeend'] - time()) < 0 ? $EndTime = 0 :  $EndTime = $_SESSION['timeend'] - time();

if($EndTime <= 0) { 
 unset($_SESSION['timeend']);
//session_destroy(); 
} 
$index++;
?>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<body onLoad="begintimer()">
<form name="frmTest" action="check.php">
<div id="dplay1" ></div>

</form>
<script language="javascript">
var limit ="<?=$time;?>";
if (document.images){
var parselimit=limit.split(":")
parselimit=(parselimit[0]*86400)+(parselimit[1]*3600)+(parselimit[2]*60)+(parselimit[3]*1)
//alert(parselimit);
}
function begintimer(){
if (!document.images)
return
if (parselimit==1)
// เหตุการณ์ที่ต้องการให้เกิดขึ้น
// window.location='page.php'; ถ้าต้องการให้กระโดดไปยัง Page อื่น
frmTest.submit();
else{
parselimit-=1
curday=parseInt(parselimit/86400);
curhr=parseInt((parselimit%86400)/3600);
curmin=parseInt((parselimit%86400)%3600/60);
cursec=parseInt(((parselimit%86400)%3600)%60);
if (curday!==0 && curhr!==0 && curmin!=0)
curtime="<font color=red> "+curday+"</font>วัน <font color=red> "+curhr+"</font>:<font color=red>"+curmin+" </font>:<font color=red>"+cursec+" </font>"
else
if(cursec==0 && curmin==0 && curhr==0 && curday==0)
{
alert('หมดเวลาแล้วจ้า');
}
else
{
curtime="<font color=red> "+curday+"</font>d <font color=red> "+curhr+"</font>:<font color=red>"+curmin+" </font>:<font color=red>"+cursec+" </font>"
}
document.getElementById('dplay1').innerHTML = curtime;
setTimeout("begintimer()",1000)
}
}
//-->
</script>

<? } ?>




Tag : PHP, MySQL, JavaScript









ประวัติการแก้ไข
2013-06-12 12:33:00
2013-06-12 12:34:03
Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2013-06-12 12:10:11 By : tstxp8iu View : 1093 Reply : 1
 

 

No. 1



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

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

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

25+ Cool jQuery Countdown Scripts – Add Dynamic Timers!






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-06-12 14:31:29 By : mangkunzo
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : ดึงข้อมูลทั้งหมด ออกมาจากฐานข้อมูล เพื่อหาความต่างของวันเวลา แล้วเอามานับถอยหลัง ซึ่งมีปัญหาเกี่ยวกับ javascript
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ 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-2024 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่