如何创建$ _SESSION变量然后将其转移到另一个页面

问题描述 投票:-1回答:2

我想创建一个会话变量,以便我可以在另一个页面上使用它。 (比如在page1.php上创建会话变量,然后在page2.php上再次调用它)。

编辑:表单验证的意思是确保变量已设置(就像输入框中有某些内容),然后将它们设置为会话变量,以便我可以在其他页面上使用它们。

这是我的page1.php代码:

<?php 

session_start();


?>
<!DOCTYPE html>
<html>
<head>
<?php 

 if(!isset($_POST["submit"])) {

 //matri70boss suggested this code. Thanks matri70boss! 
 if(!empty($_POST) && empty($_POST['username']){
  echo "error , username was not submited";
 } else {
  $_SESSION["username"] = $_POST["username"];
 }

 }

 ?>

 <title>NoterSharp</title>
 <link rel="icon" href="Images/icon.png">
 <link rel="stylesheet" type="text/css" href="style.css">

 </head>

 <body>

 <div id="header">

 <h1 id="header">Welcome to NoterSharp!<h1>

 <form action="page2.php" method="post">

 <input type="username" id="username" name="username" placeholder="Username">
 <input type="submit" id="submit" name="submit" value="Submit">

 </form>


 </div>

 </body>

 </html>

这是我的page2.php代码:

<?php 
session_start();

?>

<!DOCTYPE html>
<html>
<head>

<title>NoterSharp</title>
<link rel="icon" href="Images/icon.png">
<link rel="stylesheet" type="text/css" href="style.css">
</head>

<body>

<div id="output">

Your username is: <?php echo $_SESSION["username"]; ?>
</div>


</body>

</html>

由于某种原因,用户名没有显示在page2.php上

php html html5 forms
2个回答
0
投票

更改$ _SESSION [“username”] == $ _POST [“username”];至

$_SESSION["username"] = $_POST["username"];

并可能添加类似的东西

    if(!empty($_POST) && empty($_POST['username']){
      echo "error , username was not submited";
    }

检查是否发送了用户名,如果表单被提交但用户名为空(空字符串或未设置),则会回显“错误,...”。 也许在其他地方设置$ _SESSION [“username”]

    if(!empty($_POST) && empty($_POST['username']){
      echo "error , username was not submited";
    } else {
      $_SESSION["username"] = $_POST["username"];
    }

0
投票

有关更多信息,您可以使用以下链接作为参考。 :)

https://code.tutsplus.com/tutorials/how-to-use-sessions-and-session-variables-in-php--cms-31839
https://www.w3schools.com/pHp/php_sessions.asp
http://php.net/manual/en/reserved.variables.session.php
© www.soinside.com 2019 - 2024. All rights reserved.