PHP:$_SESSION 变量未传递到下一个网页

标签 php html mysql session

我在尝试将用户名变量从登录页面传递到下一个“欢迎”页面时遇到问题。我使用我的大学服务器托管网页,因此可以访问 public_html 文件夹中的网页文件。

在login.php页面上测试时,我能够打印 session 中保存的用户名,但是当我在成员(member)页面中尝试相同的操作时,它不会打印 session 数组中保存的用户名?我检查了所有其他帖子,但似乎没有解决方案有效。

登录.php

<?php
session_start();
include ('connect.php');
$userName=$_POST['username']; 
$password=$_POST['password'];  
$result = mysql_query("SELECT * FROM users WHERE username='$userName' AND password='$password'") or die ('Query is invalid: ' . mysql_error());;
$count =  mysql_num_rows($result);

if($count==1)
{
$_SESSION['username']=$userName;
header("Location: memberPage.php");
} else {
echo "Incorrect username or password";
}
?>

memberLogin.php

<?php
session_start();
include ('connection.php');

$_SESSION['username'] = $userName;
echo $userName;

//$result = mysql_query("SELECT * FROM users");
//while ($row = mysql_fetch_array($result)) {
//    echo $row['username'];
//}
?> 

<html>
<link rel="stylesheet" type="text/css" href="style.css" />

<div id = main-nav>
<a href="http://www.cs.nott.ac.uk/~rxp00u/logout.php" >Logout</a> 
</div>
</html>

附注我意识到我的代码不是很安全,我将在网站的基本框架正常工作后进行此工作!

编辑:login.php 上的错误报告显示以下错误: “警告:未知:打开(/var/lib/php5/sess_d760m9ebgose4liptp6jbgbc17nqjgg4,O_RDWR)失败:第 0 行未知中的权限被拒绝(13)警告:未知:无法写入 session 数据(文件)。请验证当前设置是否正确第 0 行未知中的 session.save_path 是正确的(/var/lib/php5)”

最佳答案

<?php
session_start();
include ('connection.php');

$_SESSION['username'] = $userName;
echo $userName;

$userName 未设置。如果你有错误,你就会看到这一点。您的意思是

$userName = $_SESSION['username'];
echo $userName;

关于PHP:$_SESSION 变量未传递到下一个网页,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13781743/

相关文章:

php - 带有 time() 的唯一 ID

php - Mysql 从连接中检索特定数量的分组行

php/mysql 从星期三开始一周中的一天,从星期二开始一周中的最后一天

mysql "where in"自动区分?

PHP - 将参数从数组传递到 SQL 查询

php - 在 CURL 中使用 cookie jar 时如何注入(inject) cookie?

html - 在所需表格标签的冒号前添加星号

html - 我怎样才能用CSS制作对 Angular 线

jquery - 如何使用 jquery 将 span 附加到 html 中存在的 span?

mysql - 创建新表时插入另一个表中的值