PHP 存储会话数据,在会话中存储用户标识
PHP storing session data, storing userid in session
抱歉,我是新手。以下代码只显示'Please login'。代码确实有效,但它没有按照我的意愿进行,我正在尝试将用户标识存储在会话中。这是我的代码
<?php
if(!isset($_SESSION)) session_start();
if(isset($_POST['userid'])){
$userid = $_POST['userid'];
$_SESSION['userid']=$userid;
echo "Welcome $_SESSION[userid]";
}
if (!isset($_SESSION['userid'])){
echo "Please login";
exit;
}
?>
session_start();
不应该在您的 if 条件中,它必须在脚本的开头并且始终启动
<?php
session_start();
if(isset($_POST['userid'])){
$_SESSION['userid']= $_POST['userid'];
echo "Welcome ".$_SESSION['userid'];
}
if (!$_SESSION['userid']){
echo "Please login";
exit;
}
session_start() 应该在开头,没有任何条件。在第二个 if 条件语句中还有一个额外的右括号 ) 。试试这个:
<?php
session_start();
if(isset($_POST['userid'])){
$_SESSION['userid']= $_POST['userid'];
echo "Welcome {$_SESSION['userid']}";
}
if (!$_SESSION['userid']){
echo "Please login";
exit;
}
- session_start() 需要在您开始使用会话之前。
- 我建议您将 isset() 替换为 empty(),因为 empty() 检查了:
- ""(空字符串)
- 0(整数 0)
- 0.0(0 作为浮点数)
- "0"(0 作为字符串)
- 空
- 错误
- array()(空数组)
- $变量; (声明的变量,但没有值)
抱歉,我是新手。以下代码只显示'Please login'。代码确实有效,但它没有按照我的意愿进行,我正在尝试将用户标识存储在会话中。这是我的代码
<?php
if(!isset($_SESSION)) session_start();
if(isset($_POST['userid'])){
$userid = $_POST['userid'];
$_SESSION['userid']=$userid;
echo "Welcome $_SESSION[userid]";
}
if (!isset($_SESSION['userid'])){
echo "Please login";
exit;
}
?>
session_start();
不应该在您的 if 条件中,它必须在脚本的开头并且始终启动
<?php
session_start();
if(isset($_POST['userid'])){
$_SESSION['userid']= $_POST['userid'];
echo "Welcome ".$_SESSION['userid'];
}
if (!$_SESSION['userid']){
echo "Please login";
exit;
}
session_start() 应该在开头,没有任何条件。在第二个 if 条件语句中还有一个额外的右括号 ) 。试试这个:
<?php
session_start();
if(isset($_POST['userid'])){
$_SESSION['userid']= $_POST['userid'];
echo "Welcome {$_SESSION['userid']}";
}
if (!$_SESSION['userid']){
echo "Please login";
exit;
}
- session_start() 需要在您开始使用会话之前。
- 我建议您将 isset() 替换为 empty(),因为 empty() 检查了:
- ""(空字符串)
- 0(整数 0)
- 0.0(0 作为浮点数)
- "0"(0 作为字符串)
- 空
- 错误
- array()(空数组)
- $变量; (声明的变量,但没有值)