สอบถามการทำระบบ Notify Alert โดยการดึงข้อมูลจากฐานข้อมูลหน่อยค่ะ

ถาม-ตอบ แนะนำไอเดียว โค้ดตัวอย่าง แนวทาง วิธีแก้ปัญหา สอบถามการทำระบบ Notify Alert โดยการดึงข้อมูลจากฐานข้อมูลหน่อยค่ะ

สอบถามการทำระบบ Notify Alert โดยการดึงข้อมูลจากฐานข้อมูลหน่อยค่ะ
หนูลองศึกษาการทำระบบ Notify Alert จากกระทู้บทความนี้ค่ะ 
https://www.ninenik.com/forum_view_1882_1.html?fbclid=IwAR0qX2hks-xkvp8P6SQVhbR446XqgUa8oLFfGJLejd-hJ2IpTyFf6Ab6bRY

แล้วลองทำตามจากความคิดเห็นที่ 4 ค่ะ พอจะมีแนวทางในการทำแบบกรอกข้อมูลลงแบบฟอร์มแล้วบันทึกข้อมูลลงฐานข้อมูล จากนั้นดึงข้อมูลโดยการอ้างอิง id ซึ่งเป็นคีย์ออกมา alert ตามความคิดเห็นได้ไหมค่ะ เหมือนกับนาย A กรอกแบบฟอร์ม แล้วนาย B เปิดหน้าจอไว้อยู่ แล้วนาย B สามารถเห็นการแจ้งเตือนนั้นได้ค่ะ ขอความกรุณาด้วยนะคะ ขอบคุณล่วงหน้าค่ะ


Muk Chanapa 06-10-2021 19:24:17

คำแนะนำ และการใช้งาน

สมาชิก กรุณา ล็อกอินเข้าระบบ เพื่อตั้งคำถามใหม่ หรือ ตอบคำถาม สมาชิกใหม่ สมัครสมาชิกได้ที่ สมัครสมาชิก


  • ถาม-ตอบ กรุณา ล็อกอินเข้าระบบ
  • เปลี่ยน


    ( หรือ เข้าใช้งานผ่าน Social Login )

 ความคิดเห็นที่ 1
ถ้าแบบง่ายก็จะเป็นการกำหนดเวลาให้ทำงานทุกๆ วินาทีที่กำหนด ด้วยคำสั่ง
setInterval() แล้วใช้ ajax ดึงข้อมูลจากฐานข้อมูลมาแสดง เช่น
* สมมติใช้ jQuery จัดการ ajax
 
setInterval(function(){
        $.post("https://www.ninenik.com/api/data",{},function(res){
	notifyMe();
        }); 
},10000); // ทำงานทุกๆ 10 วินาที
 
แนวทางตามความคิดเห็นที่ 4 http://niik.in/que_1882_4127
 
function notifyMe() {
// เมื่อบราวเซอร์ไม่รองรับ    
  if (!Notification) {
    alert('Desktop notifications not available in your browser. Try Chromium.'); 
    return;
  }
 
    //ตรวจสอบและขออนุญาตให้แสดงการแจ้งเตือน    
  if(Notification.permission !== "granted"){
    Notification.requestPermission();
  }else{
    // จัดรูปแบบรายการแจ้งเตือน  
    var notification = new Notification('หัวเรื่องแจ้งเตือน', {
      icon: 'https://www.ninenik.com/images/logo_01_Tue.gif',
      body: "รายละเอียดการแจ้ง!",
    });
    // เมื่อคลิกที่การแจ้งเตือน
    notification.onclick = function () {
      window.open("https://www.ninenik.com");      
    };
  }
 
}
 
ฟังก์ชั่น notifyMe() ข้างต้นเราไม่ได้กำหนดอะไร ดังนั้น ค่าก็จะแสดงข้อความเดิมทุกๆ ครั้งที่มีการแจ้ง
ดังนั้น เราก็ต้องไปปรับประยุกต์เพิ่มเติมเอาว่า ต้องการให้สามารถทำอะไรได้บ้าง
Notification object ยังสามารถกำหนดค่าต่างๆ เพิ่มเติมได้ ดูได้ที่ลิ้งค์ด้านล่าง
 
 
สามารถใส่รูป ใส่แท็ก ใส่ข้อมูล กำหนดการทำงานเพิ่มเติม และอื่นๆ 
 
ตัวอย่างสมมติเราอยากให้ค่าที่แจ้งเตือนเปลี่ยนไปตามข้อมูลที่กำหนด ก็สามารถกำหนด paramter ให้กับฟังก์ชั่น
ตามต้องการได้ เช่น หัวข้อ กับรายละเอียด เราต้องการใช้จากข้อมูลภายนอกส่งเข้าไป ก็จะได้เป็น
 
 
function notifyMe(title,body) {

// โค้ดบางส่วน
var notification = new Notification(title, {
    icon: 'https://www.ninenik.com/images/logo_01_Tue.gif',
    body: body,
});


}
 
ตอนเรียกใช้งานก็ประมาณนี้
 
setInterval(function(){
        $.post("https://www.ninenik.com/api/data",{},function(res){
// สมมติค่าที่ส่งมาจาก ajax เป็น object ที่มีข้อมูลประมาณนี้
// res = {"title":"หัวข้อ","body":"รายละเอียด"}
	notifyMe(res.title,res.body);
        }); 
},10000); // ทำงานทุกๆ 10 วินาที

ศึกษาข้อมูลเกี่ยวกับการใช้งาน ajax เรียนรู้การจัดรูปแบบข้อมูลตอบกลับเป็น object เพื่อนำมาใช้งานต่อ
ดูการกำหนดและการตั้งค่า notification object เพิ่มเติมตามลิ้งค์
 


บทความแนะนำที่เกี่ยวข้อง
ทบทวนพื้นฐาน ajax ใน jquery การส่งค่าและแสดงข้อมูลเบื้องต้นอ่าน 30,418
การใช้งาน Notifications API แจ้งเตือนผ่านเว็บบราวเซอร์อ่าน 7,184
ninenik 06-10-2021






เว็บไซต์ของเราให้บริการเนื้อหาบทความสำหรับนักพัฒนา โดยพึ่งพารายได้เล็กน้อยจากการแสดงโฆษณา โปรดสนับสนุนเว็บไซต์ของเราด้วยการปิดการใช้งานตัวปิดกั้นโฆษณา (Disable Ads Blocker) ขอบคุณครับ