首页 > 解决方案 > 将表单输入存储在 Session 变量中

问题描述

我在使用变量 $_SESSION['number'] 时遇到问题。用户可以在表单中设置,但是点击提交后它就消失了!两次或多次,该字段为空。点击提交后如何保留 $_SESSION['number']?谢谢

<form action=" <?php echo $_SERVER['PHP_SELF']; ?>" method="POST">

    <input type="text" name="number"/>
    <input type="submit" name="Submit" value="Submit!" />
</form>

<?php 

// starting the session
session_start();

$_SESSION['number']=0;

if (isset($_POST['Submit'])){ 
    if($_POST['number'] != ''){
        $_SESSION['number'] = $_POST['number'];            
    }

    $_SESSION['number'] = $_SESSION['number'];    
}
echo 'number='.$_SESSION['number'];

标签: php

解决方案


你的代码应该是这样的,

<?php
 // starting the session
 session_start();

 $num = 0;

 if (isset($_POST['Submit'])) {
  if ($_POST['number'] == '') {
    $_SESSION['number'] = $num;
   } else {
    $_SESSION['number'] = $_POST['number'];
   }
  echo 'number = '.$_SESSION['number'];
}

?>
 <form action=" <?php echo $_SERVER['PHP_SELF']; ?>" method="POST">

  <input type="text" name="number"/>
  <input type="submit" name="Submit" value="Submit!" />
 </form>

并认为它会帮助你。


推荐阅读