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

HOME > PHP > PHP Forum > อยู่ดีๆโค้ดกำหนดวันในการลงทะเบียนก็ใช้ไม่ได้อะคะ คือวันก่อนๆก็เปลี่ยนวันที่



 

อยู่ดีๆโค้ดกำหนดวันในการลงทะเบียนก็ใช้ไม่ได้อะคะ คือวันก่อนๆก็เปลี่ยนวันที่

 



Topic : 029788



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



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




คือวันก่อนๆก็เปลี่ยนวันที่ ในส่วนนี้ $inTheEnd = mktime(2009, 07, 30); เปลี่ยนได้ตลอดเลยแต่พอมาวันนี้
จะเปลี่ยนให้เลื่อนอายุการหมดวันปเป็นเดือนหน้าแบบ (2009, 08, 12); ยังงี้มันไม่ยอมเลยอะคะ
อย่างโค้ดที่ลงนี้จะเห็นว่าจะใส่เป็น (2009, 07, 32); มันกลับขึ้นหน้าselect.php แต่ใส่(2009, 08, 12); อย่างนี้ไม่ได้เลยไม่แน่ใจว่าตัวเองทำไรผิดรึป่าว งงมากเลยอะคะทุกวันก็แก้ไขได้
Code (PHP)
<?php
//กำหนดว่าวันที่เท่าไหร่ - เวลาเท่าไหร่ จะหมดสิทธิ์
date_default_timezone_set('Asia/Bangkok');  
$inTheEnd = mktime(2009, 07, 32); //ปี, เดือน, วัน
//เวลาของคนลงทะเบียน
$nn = explode("-", date("Y-m-d"));
$registerTime = mktime($nn[0], $nn[1], $nn[2]);
// ที่เหลือก็กำหนดวิธีลงทะเบียน
if($registerTime >= $inTheEnd){
echo"ไม่อยู่ในช่วงเวลาในการสมัครสอบและเลือกวิชาที่จะใช้สอบ";
} else {   include ('select.php');
}
?>




Tag : - - - -







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2009-07-31 12:29:05 By : beau1529 View : 837 Reply : 6
 

 

No. 1



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

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

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


mktime(2009, 07, 32)

เดือนไหนมี 32 วันอะ






Date : 2009-07-31 13:41:18 By : plakrim
 


 

No. 2



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



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


ที่ใส่mktime(2009, 07, 32) ยังงี้คือให้ดูอะคะว่าต้องใส่ยังงี้มันถึงจะทำตามเงื่อนไข
แต่ใส่ (2009, 08, 12); มันกลับไม่ได้อะคะ คือต้อการให้มันคิดว่าถ้าเกินวันนี้ก็ยังเปิดการเลือกวิชาได้
ตอนนี้เขียนว่า (2009, 08, 12) มันก็ไม่ไปหน้าอื่นให้กลับ
echo"ไม่อยู่ในช่วงเวลาในการสมัครสอบและเลือกวิชาที่จะใช้สอบ"; ซะงั้นอะคะ
Date : 2009-07-31 14:11:37 By : beau1529
 

 

No. 3



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



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


ลองใส่รูปแบบเต็มๆของ mktime ยังครับ

mktime(0, 0, 0, 2009, 07, 29)
Date : 2009-07-31 14:16:47 By : zankumuro
 


 

No. 4



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



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


ไม่ได้อะคะคุณ zankumuro หากใส่อย่างที่คุณบอกนี้ต้องเปลี่ยนส่วนอื่นๆด้วยใช่มั้ยคะให้เหมาะกับการ
รับค่ามันอะคะ
Date : 2009-07-31 14:23:30 By : beau1529
 


 

No. 5



โพสกระทู้ ( 1,357 )
บทความ ( 4 )

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

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



int mktime ( [int $hour [, int $minute [, int $second [, int $month [, int $day [, int $year [, int $is_dst]]]]]]] )


สังเกต ข้อมูลที่ส่งเข้าฟังก์ชั่น นี้ ทุกตัวเป็นแบบ int หมดเลย


$inTheEnd = mktime(2009, 07, 32); //ปี, เดือน, วัน


07 ที่ส่งเข้าไป อยู่ในรูปแบบตัวเลข เมื่อมันเป้นตัวเลขอยู่แล้วฟังก์ชั่น จึงไม่แปลงค่านั้นอีก ทำให้ค่าที่ฟังก์ชั่นเอาไปใช้ คือ 0 (เลขตัวแรก เพราะขึ้นต้นด้วย 0)

เอ งั้นแล้วทำไม

$registerTime = mktime($nn[0], $nn[1], $nn[2]);

ถึงใช้งานได้ล่ะ

เพราะว่า เมื่อส่งข้อมูลเข้าฟังก์ชั่น แบบ สตริง แต่ฟังก์ชั่นต้องการแบบ int โปรแกรมภาษาอื่นๆ อาจจะเกิด exception แต่ php ไม่เกิด เพราะมันฉลาด (ฮ่าๆ) มันแปลงค่าที่ส่งเข้ามาให้เป็น int (โดย intval("string");)
ถ้าแปลงไม่ได้ถึงจะเกิด exception ที่นี้ intval("0x") = x

ดังนั้น ต้องแก้ไข


$inTheEnd = mktime(2009, 07, 32); //ปี, เดือน, วัน

ให้เป็น

$inTheEnd = mktime("2009", "07", "32"); //ปี, เดือน, วัน

หรือ

$inTheEnd = mktime(2009, 7, 32); //ปี, เดือน, วัน




Date : 2009-07-31 14:56:21 By : lozomac
 


 

No. 6



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



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


ลองทำตามแบบที่คุณ lozomac บอกใช้ได้เลยคะ แต่ก็งงนะคะอยู่ดีๆมันก็เป็นฮ่าๆๆ
ตกใจเลยกำลังทำโปรเจคอยู่ดีๆนึกว่าต้องแก้เยอะซะแล้วขอบคุณมากค่ะ
ของโบเปลี่ยนตามแบบที่หนึ่งที่คุณ lozomac บอกอะคะ

Code (PHP)
<?php
//กำหนดว่าวันที่เท่าไหร่ - เวลาเท่าไหร่ จะหมดสิทธิ์
date_default_timezone_set('Asia/Bangkok');  
$inTheEnd = mktime("2009", "08","01" ); //ปี, เดือน, วัน
//เวลาของคนลงทะเบียน
$nn = explode("-", date("Y-m-d"));
$registerTime = mktime($nn[0], $nn[1], $nn[2]);
// ที่เหลือก็กำหนดวิธีลงทะเบียน
if($registerTime >= $inTheEnd){
echo"ไม่อยู่ในช่วงเวลาในการสมัครสอบและเลือกวิชาที่จะใช้สอบ";
} else {   include ('select.php');
}
?>

Date : 2009-07-31 19:11:56 By : beau1529
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
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 04
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 อัตราราคา คลิกที่นี่