我從頭開始寫這篇文章,所以有很多錯誤,但即使您不使用MySQL,您也應該明白。基本的想法是管理員通過AJAX將消息和類型一起上傳到服務器。存儲您的消息的數據庫已更新。當用戶在他們的通知頁面上選擇一種類型時,會發出另一個AJAX請求來檢索正確的消息,然後根據需要顯示該消息。如果您需要澄清任何事情,請告訴我。
在uploadnotif.php:
<input id="message_to_broadcast" type="text">
<select id="message_type">
<option value="ALL">ALL</option>
<option value="ABC">ABC</option>
<option value="XYZ">XYZ</option>
</select>
<div id="broadcast" onclick="OnBroadcast();">Broadcast</div>
<script>
OnBroadcast = function()
{
var oMessageInput = document.getElementById("message_to_broadcast");
var oTypeSelect = document.getElementById("message_type");
var aPostData = "message=" + oMessageInput.value + "&type=" + oTypeSelect.value;
var oXMLHttpRequest = new XMLHttpRequest();
oXMLHttpRequest.open("POST", "broadcast_message.php", true);
oXMLHttpRequest.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
oXMLHttpRequest.send(aPostData);
}
</script>
在broadcast_message.php:
$safe_message = $mysqli->real_escape_string($_POST["message"]);
$safe_type = $mysqli->real_escape_string($_POST["type"]);
$query = "UPDATE messages SET message = $safe_message WHERE type = $safe_type";
$mysqli->query($query);
在notif.php:
<div id="message"> </div>
<select id="message_type" onchange="OnMessageTypeChange();">
<option value="ALL">ALL</option>
<option value="ABC">ABC</option>
<option value="XYZ">XYZ</option>
</select>
<script>
OnMessageTypeChange = function()
{
var oTypeSelect = document.getElementById("message_type");
var aPostData = "type=" + oTypeSelect.value;
var oXMLHttpRequest = new XMLHttpRequest();
oXMLHttpRequest.open("POST", "get_message.php", true);
oXMLHttpRequest.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
oXMLHttpRequest.onreadystatechange = function()
{
if (oXMLHttpRequest.readyState == XMLHttpRequest.DONE && oXMLHttpRequest.status == 200)
{
var oMessageDiv = document.getElementById("message");
oMessageDiv.firstChild.nodeValue = oXMLHttpRequest.responseText;
}
}
oXMLHttpRequest.send(aPostData);
}
</script>
在get_message.php:
$safe_type = $mysqli->real_escape_string($_POST["type"]);
$query = "SELECT message FROM messages WHERE type = $safe_type";
$message_result = $mysqli->query($query);
$message_assoc = $message_result->fetch_assoc();
echo $message_assoc["message"];
$message_result->free();
「信息」 表:
id | type | message
1 | "ALL" | "All y'all call Paul a tall wall."
2 | "ABC" | "ABC members, meeting at noon tomorrow."
3 | "XYZ" | "XYZ! What up party people!"
請告訴我,如果我需要用代碼來解釋 –
你好@anoop,我打算用表,因爲我想存儲通知。非常感謝您的回覆。 – LazyNinja