php - 为什么这个session的值总是上一次的值?
本文介绍了php - 为什么这个session的值总是上一次的值?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
其实就是想把第一个框里的值用session保存一下 在提示错误的时候不用重新输入了
但是我这个代码每次保存的值都是都是上一次输入错误时的值 这是为什么?比如我第一次输入11 第二个框故意输出 等第二次输入22时第二个框的还故意输错时 这个时候第一个框里的值为什么是11? 这样一直试下去显示的数字永远都是上一次的数字 这个应该怎么办?
<form method="post">
<input type="text" autocomplete="off" value="<?php session_start(); if(isset($_SESSION["name"])){echo $_SESSION["name"];} ?>" name="name"><br /><br />
<input type="text" autocomplete="off" name="age"><br /><br />
<button type="submit">提交</button>
</form>
<?php
if(isset($_POST['age'])){
$_SESSION["name"]=$_POST['name'];
if($_POST['age']==2){
echo "正确";
$_SESSION["name"]='';
}else{
echo "错误";
}
}
?>
解决方案
改成这样:
<?php
session_start();
if(isset($_POST['age'])){
$_SESSION["name"]=$_POST['name'];
if($_POST['age']==2){
echo "正确";
$_SESSION["name"]='';
}else{
echo "错误";
}
}
?>
<form method="post">
<input type="text" autocomplete="off" value="<?php if(isset($_SESSION["name"])){echo $_SESSION["name"];} ?>" name="name"><br /><br />
<input type="text" autocomplete="off" name="age"><br /><br />
<button type="submit">提交</button>
</form>
这篇关于php - 为什么这个session的值总是上一次的值?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文