Pemberitahuan Push Web di PHP

Programming

oleh Vinci terakhir diubah pada 6 Oktober 2022.

Pemberitahuan push web adalah alat yang menjanjikan untuk meningkatkan lalu lintas dan konversi. Kami telah melihat cara mengirim pemberitahuan push web menggunakan JavaScript.

Tutorial ini untuk mereka yang ingin mengirim pemberitahuan push web dengan data dinamis menggunakan PHP. Ini adalah metode alternatif dari contoh JavaScript itu tetapi dengan pemrosesan sisi server di PHP.

Mendapat konten notifikasi dari PHP. Konten notifikasi hardcoded dapat diganti dengan sumber data apa pun dari database atau file.

Jika Anda menginginkan solusi PHP murni untuk mengirim pemberitahuan khusus, artikel tertaut akan berguna.

pemberitahuan push web php

Tentang contoh ini

Contoh ini menunjukkan pemberitahuan push web di browser. Pemberitahuan dikirim setiap 10 menit sesuai konfigurasi. Maka notifikasi yang dikirim akan ditutup secara otomatis. Waktu tampilan notifikasi di browser dikonfigurasikan sebagai 5 menit.

Item notifikasi dibuat dan dikelola di sisi klien. Aksara Jawa atur waktu habis Fungsi ini digunakan untuk mengatur waktu naik atau turun pemberitahuan.

Panggilan AJAX ke PHP untuk mengirim pemberitahuan push web

HTML ini berisi skrip untuk menjalankan loop untuk mengirim pemberitahuan pada interval waktu berkala.

Ini memiliki fungsi pushNotify() yang meminta PHP melalui AJAX untuk mengirim pemberitahuan. PHP mengembalikan konten notifikasi dalam bentuk objek JSON.

Penangan panggilan AJAX membaca JSON dan menghasilkan notifikasi. Dalam skrip ini, buatPemberitahuan() Fungsi mengirimkan pemberitahuan ke target acara.

Memetakan deklarasi JavaScript Klik Properti untuk membuka URL dari respons PHP JSON.

index.php

<!DOCTYPE html>
<html>
<head>
<title>Web Push Notifications in PHP</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<link href="https://phppot.com/php/web-push-notifications-php/style.css" type="text/css" rel="stylesheet" />
<script src="https://code.jquery.com/jquery-3.6.1.min.js"
    integrity="sha256-o88AwQnZB+VDvE9tvIXrMQaPlFFSUTR+nldQm1LuPXQ="
    crossorigin="anonymous"></script>
</head>
<body>
    <div class="phppot-container">
        <h1>Web Push Notification using PHP in a Browser</h1>
        <p>This example shows a web push notification from PHP on
            browser automatically every 10 seconds. The notification
            also closes automatically just after 5 seconds.</p>
    </div>
    <script>
        // enable this if you want to make only one call and not repeated calls automatically
        // pushNotify();

        // following makes an AJAX call to PHP to get notification every 10 secs
        setInterval(function() { pushNotify(); }, 10000);

        function pushNotify() {
        	if (!("Notification" in window)) {
        		// checking if the user's browser supports web push Notification
        		alert("Web browser does not support desktop notification");
        	}
        	if (Notification.permission !== "granted")
        		Notification.requestPermission();
        	else {
        		$.ajax({
        			url: "push-notify.php",
        			type: "POST",
        			success: function(data, textStatus, jqXHR) {
        				// if PHP call returns data process it and show notification
        				// if nothing returns then it means no notification available for now
        				if ($.trim(data)) {
        					var data = jQuery.parseJSON(data);
        					console.log(data);
        					notification = createNotification(data.title, data.icon, data.body, data.url);

        					// closes the web browser notification automatically after 5 secs
        					setTimeout(function() {
        						notification.close();
        					}, 5000);
        				}
        			},
        			error: function(jqXHR, textStatus, errorThrown) { }
        		});
        	}
        };

        function createNotification(title, icon, body, url) {
        	var notification = new Notification(title, {
        		icon: icon,
        		body: body,
        	});
        	// url that needs to be opened on clicking the notification
        	// finally everything boils down to click and visits right
        	notification.onclick = function() {
        		window.open(url);
        	};
        	return notification;
        }
    </script>
</body>
</html>

Kode PHP untuk menyiapkan paket JSON dengan konten notifikasi dinamis

Kode ini menyediakan data notifikasi dari sisi server. Kaitkan program DAO Anda ke PHP ini untuk mengubah kontennya dari database jika diinginkan.

push-notify.php

<?php
// if there is anything to notify, then return the response with data for
// push notification else just exit the code
$webNotificationPayload['title'] = 'Push Notification from PHP';
$webNotificationPayload['body'] = 'PHP to browser web push notification.';
$webNotificationPayload['icon'] = 'https://phppot.com/badge.png';
$webNotificationPayload['url'] = 'https://phppot.com';
echo json_encode($webNotificationPayload);
exit();
?>

Jadi kami telah membuat pemberitahuan push web dengan konten dinamis dari PHP. Ada berbagai kegunaannya dengan menempatkannya dalam sebuah aplikasi.

Gunakan pemberitahuan push

  • Pemberitahuan push membantu meningkatkan lalu lintas situs web dengan mengirimkan konten yang relevan kepada pelanggan.
  • Ini adalah cara untuk memposting iklan profesional untuk menghasilkan arahan untuk menghasilkan uang bagi bisnis Anda.
  • Ini akan membantu menyebarkan merek dan menyimpannya di benak pelanggan yang akan membuat mereka tetap bersama Anda.

Unduh

Kembali ke atas


Source link

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *