所以我要在第二页传递一个变量。我测试了索引页面顶部的会话,以便我知道会话是否包含变量。像这样:
<?php
error_reporting(E_ALL ^ E_NOTICE);
session_start();
$UserID = $_SESSION['CustNum'];
$UserN = $_SESSION['UserName'];
echo "$UserN";
?>
索引页面完全没问题。它确实打印了用户名。但是当谈到我将传递变量的下一页时,我尝试使用相同的代码来查看会话是否包含某些内容。但那时,没有。请帮忙。此外,这些代码都高于我的代码,最重要的是。
答案 0 :(得分:3)
在哪里:
$_SESSION['CustNum'] = 'xxx';
$_SESSION['UserName'] = 'yyy';
答案 1 :(得分:0)
您是否在其他页面上声明了session_start()
?
你需要在某处初始化$_SESSION['UserName']
。
就像这个$_SESSION['UserName'] = "my_username"
答案 2 :(得分:0)
请尝试此方法
在第一页
error_reporting(E_ALL ^ E_NOTICE);
session_start();
$_SESSION['CustNum']='12345';
$_SESSION['UserName']='sivanthi';
在另一页
error_reporting(E_ALL ^ E_NOTICE);
session_start();
echo $_SESSION['CustNum'];
echo $_SESSION['UserName'];
答案 3 :(得分:0)
根据您的评论和代码:
if($numrows === 1){ $row = mysql_fetch_assoc($query)or die ('Unable to run query:'.mysql_error());
// fetch associated: get function from a query for a database
$dbpass = $row['PassWord']; // read password of inputted user from the query.
$dbuser = $row['UserName']; // read username from the query
$dbactive = $row['Active']; // read if user is active $dbid = $row['CustNum'];
if($UserP == $dbpass){ if($dbactive == 1){ //set session information
$_SESSION['CustNum'] = $dbid;
$_SESSION['UserName'] = $dbuser;
}
..我想这是:if($UserP == $dbpass){ if($dbactive == 1)
是false
。检查一下。