首页 > 解决方案 > 无法将 $_SESSION['user'] 值(保存在 page1 中)放在第 2 页内的输入字段中

问题描述

不知道是不是错误在于代码。

// 第 1 页中的代码

<?php
session_start();
?>

<!DOCTYPE html>  
<html>  
<head>  
  <title>Test1</title>  
</head>  
<body>
  <FORM METHOD = "POST" action = "Page2.php">
    <input type="text" name = "user">  
    <input type="submit" name = "submit" value = "Submit">
  </FORM>
  <?php 
  if (isset($_POST["submit"])){
    $_SESSION['user'] = $_POST['user'];
  }
  ?>
</body>  
</html>

// Page2 中的代码

<?php
session_start();
?>

<!DOCTYPE html>  
<html>  
<head>  
  <title>Test2</title>  
</head>  
<body>
  <input type="text" name = "field3" value = <?php echo htmlspecialchars($_SESSION['user']); ?>>
</body>
</html>

我希望在 Page2 中名为“field3”的输入字段将填充在名为 Page1 的“名称”的字段中提供的任何值。

标签: php

解决方案


您在提交表单时将数据发布到 page2

<FORM METHOD = "POST" action = "Page2.php">

if 语句中的代码从未执行if (isset($_POST["submit"])){

您必须在 Page2 的顶部放置 if 语句session_start才能使其工作

if (isset($_POST["Submit"])){
  $_SESSION['user'] = $_POST['user'];
}

推荐阅读