onclick php之后更新表
我生成系统通知,但遇到问题 我希望在为已登录的用户单击从“new=1”到“new=0”之后更新表“notifications” 如何在使用ajax或其他工具单击后更新数据库。 如果我使用ajax发送请求服务器,如下所示:onclick php之后更新表,php,javascript,mysql,ajax,onclick,Php,Javascript,Mysql,Ajax,Onclick,我生成系统通知,但遇到问题 我希望在为已登录的用户单击从“new=1”到“new=0”之后更新表“notifications” 如何在使用ajax或其他工具单击后更新数据库。 如果我使用ajax发送请求服务器,如下所示: function readNotifications(str) { if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome, Opera, Safari
function readNotifications(str)
{
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("txtHint").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","controlpanel.php?notification=readNews",true);
xmlhttp.send();
}
服务器不知道要更新警报的用户ID。
如果我在某个时间发送用户ID,就可以更改用户ID,每个人都可以更新彼此的通知,这不是安全性
对不起,我的英语不好,如果我不懂你可以问一个问题。
谢谢大家! 我认为用户登录后,最好将用户id保存在会话变量中
<?php
session_start();
// store session data
$_SESSION['user_id']=100001;
?>
和如果您使用cookie,您仍然可以从服务器端代码接受cookie
$_COOKIE["user_id"];
will do it.
只需确保将withCredentials属性设置为true
var req= new XMLHttpRequest();
req.withCredentials = true;
您的问题是唯一的服务器不知道什么是用户id还是超过?我使用cookie,但这对我没有帮助。并且可以更改会话。我无法理解它与凭据的关系。我觉得它不适合我。
var req= new XMLHttpRequest();
req.withCredentials = true;