ThaiSEOBoard.com

พัฒนาเว็บไซต์ => Programming => หัวข้อเริ่มโดย: SG14 ใน 16 กันยายน 2013, 16:05:38

ชื่อเรื่อง: [PHP] ขอทราบวิธี ตั้งเวลาในการเผยแพร่ข่าวสารทีนะคะ
โพสต์โดย: SG14 ใน 16 กันยายน 2013, 16:05:38
ขอทราบวิธี ตั้งเวลาในการเผยแพร่ข่าวสารทีนะคะ

คือเขียน backend เองค่ะ แต่อยากได้วิีตั้งเวลาในการเผยแพร่บทความ
เช่นเขียนไว้ก่อน แต่เรากำหนดเวลาให้บทความออกสู่หน้าเว็บเราในเวลาที่เรากำหนด

มีวิธีไหมค่ะแล้วทำอย่างไรค่ะ
ชื่อเรื่อง: Re: [PHP] ขอทราบวิธี ตั้งเวลาในการเผยแพร่ข่าวสารทีนะคะ
โพสต์โดย: Putter™ ใน 16 กันยายน 2013, 17:48:27
ใช้ crontab ครับ  แล้วให้รัน ไฟล์ที่คอยเช็คงานว่ามีงานที่จะต้องโพสหรือเปล่า เช็คทุกนาที หรือ 5 นาทีก็ได้

background process  (crontab) -> php script + query  (time >=xxx)  > post
ชื่อเรื่อง: Re: [PHP] ขอทราบวิธี ตั้งเวลาในการเผยแพร่ข่าวสารทีนะคะ
โพสต์โดย: phpwin ใน 16 กันยายน 2013, 18:24:19
อ้างถึงจาก: Putter™ ใน 16 กันยายน 2013, 17:48:27
ใช้ crontab ครับ  แล้วให้รัน ไฟล์ที่คอยเช็คงานว่ามีงานที่จะต้องโพสหรือเปล่า เช็คทุกนาที หรือ 5 นาทีก็ได้

background process  (crontab) -> php script + query  (time >=xxx)  > post

ตามความคิดเห็นนี้ครับ แต่ถ้าโฮสไม่มีบริการนี้อยู่ ให้ลองทำตามบทความนี้ดูครับ
http://php-for-ecommerce.blogspot.com/2012/06/cronjob.html
ชื่อเรื่อง: Re: [PHP] ขอทราบวิธี ตั้งเวลาในการเผยแพร่ข่าวสารทีนะคะ
โพสต์โดย: Queue ใน 16 กันยายน 2013, 19:07:28
ถ้าเป็น database สร้าง public date ง่ายกว่านะครับ
ใช้ sql ดึงเฉพาะ ข้อมูลที่ถึงเวลาที่ต้องการแสดง
ชื่อเรื่อง: Re: [PHP] ขอทราบวิธี ตั้งเวลาในการเผยแพร่ข่าวสารทีนะคะ
โพสต์โดย: whazzupp ใน 16 กันยายน 2013, 19:10:43
อ้างถึงจาก: Queue ใน 16 กันยายน 2013, 19:07:28
ถ้าเป็น database สร้าง public date ง่ายกว่านะครับ
ใช้ sql ดึงเฉพาะ ข้อมูลที่ถึงเวลาที่ต้องการแสดง

แนะนำตามนี้แหละ ถ้า Cronjob แลดูจะยุ่งยากไปนะ
ชื่อเรื่อง: Re: [PHP] ขอทราบวิธี ตั้งเวลาในการเผยแพร่ข่าวส
โพสต์โดย: lnwUthai ใน 21 กันยายน 2013, 15:27:53
select * from date(date1)>='2013-09-22' and date(date2)<='2013-09-30'
อันนี้ก็อีกวิธีนึงครับ  ใส่เวลาไว้ที่ข่าวเลย จะแสดงตามที่เรากำหนดเลยครับ
ชื่อเรื่อง: Re: [PHP] ขอทราบวิธี ตั้งเวลาในการเผยแพร่ข่าวสารทีนะคะ
โพสต์โดย: Mr.Zero ใน 21 กันยายน 2013, 15:49:26
อ้างถึงจาก: Queue ใน 16 กันยายน 2013, 19:07:28
ถ้าเป็น database สร้าง public date ง่ายกว่านะครับ
ใช้ sql ดึงเฉพาะ ข้อมูลที่ถึงเวลาที่ต้องการแสดง

ขอรายละเอียดเพิ่มเติมหน่อยครับ ขอบคุณมากๆ
ชื่อเรื่อง: Re: [PHP] ขอทราบวิธี ตั้งเวลาในการเผยแพร่ข่าวสารทีนะคะ
โพสต์โดย: InwAekza ใน 21 กันยายน 2013, 17:29:39
ใส่เงื่อนไขเข้าไปตอนคิวรี่ได้เลยง่ายๆ ไม่ยุ่งยากด้วย
ชื่อเรื่อง: Re: [PHP] ขอทราบวิธี ตั้งเวลาในการเผยแพร่ข่าวสารทีนะคะ
โพสต์โดย: zenon ใน 22 กันยายน 2013, 08:15:39
ไม่ต้องไป query ใหม่ดีกว่า
new Query()
if( ($this->post_id == $Query->hide_post_id) && ($this->post_time <= $Query->hide_post_time){
     //hide something
}
else{
   //do something
}
ชื่อเรื่อง: Re: [PHP] ขอทราบวิธี ตั้งเวลาในการเผยแพร่ข่าวส
โพสต์โดย: SG14 ใน 23 กันยายน 2013, 09:35:31
อ้างถึงจาก: lnwUthai ใน 21 กันยายน 2013, 15:27:53
select * from date(date1)>='2013-09-22' and date(date2)<='2013-09-30'
อันนี้ก็อีกวิธีนึงครับ  ใส่เวลาไว้ที่ข่าวเลย จะแสดงตามที่เรากำหนดเลยครับ

แบบนี้เวลาต้องรับตัวแปรจากหน้า backend ของเราใช้ไหมค่ะ
แล้วเราก็ค่อยคิวรี่มา

จริงๆอยากได้แบบว่า ให้คนเขียนบทความสามารถกำหนดในหน้า backend ได้เลยเช่นให้ เผยแพร่ตอน ตี5 แต่เราเขียนข่าวเมื่อ 3 ทุ่มอะค่ะ
แต่ละบทความก้อาจจะมีเวลาเผยแพร่บทความไม่เหมือนกัน
ชื่อเรื่อง: Re: [PHP] ขอทราบวิธี ตั้งเวลาในการเผยแพร่ข่าวส
โพสต์โดย: gp72343 ใน 24 กันยายน 2013, 08:58:49
อ้างถึงจาก: SG14 ใน 23 กันยายน 2013, 09:35:31
อ้างถึงจาก: lnwUthai ใน 21 กันยายน 2013, 15:27:53
select * from date(date1)>='2013-09-22' and date(date2)<='2013-09-30'
อันนี้ก็อีกวิธีนึงครับ  ใส่เวลาไว้ที่ข่าวเลย จะแสดงตามที่เรากำหนดเลยครับ

แบบนี้เวลาต้องรับตัวแปรจากหน้า backend ของเราใช้ไหมค่ะ
แล้วเราก็ค่อยคิวรี่มา

จริงๆอยากได้แบบว่า ให้คนเขียนบทความสามารถกำหนดในหน้า backend ได้เลยเช่นให้ เผยแพร่ตอน ตี5 แต่เราเขียนข่าวเมื่อ 3 ทุ่มอะค่ะ
แต่ละบทความก้อาจจะมีเวลาเผยแพร่บทความไม่เหมือนกัน

ใน Backend ก็เพิ่ม field ที่ใช้เก็บค่า วัน-เวลา ว่าจะให้มันเริ่มเผยแพร่บทความตอน วัน-เวลา เท่าไร
ตอน Admin เขียนบนความสัก 3 ทุ่ม Admin ก็ใส่วัน-เวลาเข้าไปเลยว่าจะให้เริ่มแสดงในวันพรุ่งนี้ตอนตี 5
แล้วก็เหลือก็ใช้วีธีการ Query ตามคอมเม้นด้านบนที่แนะนำมา แบบนี้ง่ายกว่า Cron เยอะเลยครับ