我从头开始写这篇文章,所以有很多错误,但即使您不使用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