我正在使用 html5 (Intel XDK) 开发一个移动应用程序,并使用 php 对服务器端进行编码。在我的应用程序中,用户可以将图像从移动设备上传到服务器。但是当我更改服务器端代码以检查用户是否使用会话登录时,会话变量返回 null。我的代码如下所示。
var par= new FormData(document.getElementById('form'));
var obj= new XMLHttpRequest();
...
obj.open('POST', 'url.com/upload.php');
obj.send(par);
在服务器端代码中,我想检查会话变量。
if($_SESSION['user_logged_in'] == 1)
我在 SO 中搜索了这个问题,但结果有一些问题。例如,在下面的帖子中,答案说会话 ID 必须保留在客户端,但我认为由于安全问题,这不是一个好的解决方案。
这个问题有什么好的实施方案吗?提前致谢。
编辑:我正在调用 session_start 并且如果我删除已登录的检查它可以工作。我用 Ajax 调用的其他页面会到达会话变量。我对安全性的怀疑是我的会话 id 会在源代码中看到,这不会是一个安全问题吗?