我试图使用登录系统将我的用户名保存到SESSION变量,但它不会保存。
我尝试在同一页面中立即打印会话变量,但是当我转到另一个页面时,它将无法保存。
我是非常新的这个东西,所以我很抱歉,如果这是显而易见的事情:)
任何帮助将不胜感激:)
PHP代码1:
e2 <- tsCV(tvis, rwf, h=24)
PHP CODE 2(下一页):
此页面只是一个包含其他内容的HTML页面,但在其正文中包含以下PHP代码,以测试它是否保存了变量。
$app->post('/api/customer/login/{Username}/{PassW}', function(Request $request, Response $response){
$Username = $request->getParam('Username');
$PassW = $request->getParam('PassW');
$PassW = md5($PassW);//FIND NEW WAY OF HASHING AS MD5 IS DEPRECIATED
$sql = "SELECT * FROM login WHERE Username= '$Username' AND PassW='$PassW' LIMIT 1";
try{
$db = new db();
$db = $db->connect();
$stmt = $db->query($sql);
$result = $stmt->fetchAll(PDO::FETCH_ASSOC);
if(count($result) == 1){
session_start();
$_SESSION['Username'] = $Username;
echo "<script type='text/javascript'>alert('Correct!');
window.location='http://localhost/testing/dashboard.php';
</script>";
exit();
答案 0 :(得分:0)
此代码缺少session_start()
:PHP CODE 2(下一页)
应该是:
<?php
session_start();
print_r($_SESSION);
?>
答案 1 :(得分:0)
每当您在页面上使用会话时,您必须在该页面上启动会话,因此您在代码2页面上的代码应该是这样的
<?php
session_start();
print_r($_SESSION);
?>
另外,在登录页面上添加相同的行
session_start();
如果您看起来一切正常,那么当您使用javascript重定向页面时,尝试从浏览器中删除缓存,浏览器可能会从缓存中加载页面。