通过ajax设置php会话
发布时间:2020-12-16 02:49:46 所属栏目:百科 来源:网络整理
导读:我正在尝试构建我的 AJAX登录系统,但我遇到了 PHP会话的一些问题. 这是我在index.php中使用的AJAX代码: $("#buttonLogin").click(function(){ $.post("?php echo $AJAX ?/ajaxLogin.php",{ Username : $("#loginUsername").val(),Password : $("#loginPassw
我正在尝试构建我的
AJAX登录系统,但我遇到了
PHP会话的一些问题.
这是我在index.php中使用的AJAX代码: $("#buttonLogin").click(function(){ $.post("<?php echo $AJAX ?>/ajaxLogin.php",{ Username : $("#loginUsername").val(),Password : $("#loginPassword").val() },function(result){ if(result == "OK"){ window.location.href = "<?php echo $PUBLIC?>/home.php"; } else { $("#loginMessageError").show(); } }); }); 这是通过AJAX调用的ajaxLogin.php: <?php require_once("../settings.php"); require_once($ABS_ENGINE."/classUser.php"); $user = new User(); if($user->loginUser($_POST["Username"],$_POST["Password"])){ $UserID = $user->getUserId($_POST["Username"]); session_start(); $_SESSION['UserID'] = $UserID; echo "OK"; } else { echo "ERROR"; } ?> 当我在home.php并尝试回显$_SESSION [“UserID”]时,我收到以下错误:
可能这是不正确的,因为会话必须在任何输出之前设置,但如果我尝试回显$_SESSION [‘UserID’] = $UserID; line它的会话变量被正确显示. 解决方法
您需要首先启动会话,例如session_start().然后只有您可以访问会话变量.看看这个简单的例子,它可能对你有所帮助:
aj.php <script src="jquery.js"></script> <script type="text/javascript"> $(document).ready( function(){ $.ajax({ type : 'GET',url : 'sess.php',data: { user : 'guna',},success : function(data){ alert(data); },error : function(XMLHttpRequest,textStatus,errorThrown) {alert ("Error Occured");} }); }); </script> </html> sess.php <?php session_start(); $_SESSION['user']=$_GET['user']; echo $_SESSION['user']; ?> 正如其他人指出的那样,你也可以在阅读会话变量的页面中检查session_start(). (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |