表单提交后清除PHP会话数据

表单提交后清除PHP会话数据,php,Php,我将会话数据存储在$relnum变量中,如下所示: if (!isset($_SESSION)) { session_start(); $_SESSION['releasen'] =$_POST['release_no']; $relnum= $_SESSION['releasen']; } 并将其显示在表单文本字段中,如下所示 <input name="relnu" id="relnu" type="text" value="<?php if ($re

我将会话数据存储在$relnum变量中,如下所示:

if (!isset($_SESSION)) {
    session_start();
    $_SESSION['releasen'] =$_POST['release_no'];
    $relnum=  $_SESSION['releasen']; 
}
并将其显示在表单文本字段中,如下所示

<input name="relnu" id="relnu" type="text" value="<?php if ($rel==''){ echo $relnum;} else echo $rel; ?>" readonly="true"/>
if (isset($_POST['submitM']))  {
    $faultd=$_POST['faultdistribution'];
    $faultdes=$_POST['faultdescription'];
    $faultsev=$_POST['faultseverity'];
    $faultt=$_POST['faulttype'];
    $faultn=$_POST['faultcmnt'];
    $rel=$_POST['relnu'];
    $query = mysql_query("INSERT INTO `fault` (`fault-cmnt`,`fault-type`, `release_no`, `fault-discription`, `fault-severity`, `fault-distribution`) VALUES ('$faultn','$faultt', '$rel', '$faultd', '$faultsev', '$faultdes')")
        or die(mysql_error());
    echo "Data Added sucessfully";
}
数据已成功提交,但在此之后,$relnum变量不显示任何内容。我无法理解原因是什么,因为我正在会话中存储数据

我没有使用unset

请帮助我,我缺少什么?

使用

session_unset();
session_destroy();
希望对您有所帮助

使用

session_unset();
session_destroy();

希望有此帮助

您无需在表单中发布会话数据,否则您的代码看起来很好。您可以通过以下方式轻松发布:

if (isset($_POST['submitM']))  {
    session_start();
    $faultd=$_POST['faultdistribution'];
    $faultdes=$_POST['faultdescription'];
    $faultsev=$_POST['faultseverity'];
    $faultt=$_POST['faulttype'];
    $faultn=$_POST['faultcmnt'];
    $rel=$_SESSION['releasen'];
    $query = mysql_query("INSERT INTO `fault` (`fault-cmnt`,`fault-type`, `release_no`, `fault-discription`, `fault-severity`, `fault-distribution`) VALUES ('$faultn','$faultt', '$rel', '$faultd', '$faultsev', '$faultdes')")
        or die(mysql_error());
    echo "Data Added sucessfully";
}
它可以正常工作,请测试一下


谢谢

您不需要在表单中发布会话数据,否则您的代码看起来很好。您可以通过以下方式轻松发布:

if (isset($_POST['submitM']))  {
    session_start();
    $faultd=$_POST['faultdistribution'];
    $faultdes=$_POST['faultdescription'];
    $faultsev=$_POST['faultseverity'];
    $faultt=$_POST['faulttype'];
    $faultn=$_POST['faultcmnt'];
    $rel=$_SESSION['releasen'];
    $query = mysql_query("INSERT INTO `fault` (`fault-cmnt`,`fault-type`, `release_no`, `fault-discription`, `fault-severity`, `fault-distribution`) VALUES ('$faultn','$faultt', '$rel', '$faultd', '$faultsev', '$faultdes')")
        or die(mysql_error());
    echo "Data Added sucessfully";
}
它可以正常工作,请测试一下


谢谢你

记住会话开始只在服务器端临时存储变量,检查每个页面上是否有会话开始,检查只在该页面上回显会话变量,如果它没有回显任何内容,则检查上一个创建会话变量的位置,它可以帮助您自己解决问题。

记住会话启动只在服务器端临时存储变量,检查每个页面上是否有会话启动,检查是否只在该页面上回显会话变量,如果它没有回显任何内容,则检查上一个使会话变为变量的位置,它可以帮助您自己解决问题。

您可以尝试以下代码:

if (isset($_POST['release_no']) && !empty($_POST['release_no'])) {
    session_start();
    $_SESSION['releasen'] =$_POST['release_no'];
    $relnum=  $_SESSION['releasen']; 
}

您可以尝试以下代码:

if (isset($_POST['release_no']) && !empty($_POST['release_no'])) {
    session_start();
    $_SESSION['releasen'] =$_POST['release_no'];
    $relnum=  $_SESSION['releasen']; 
}

会话变量是$\u session['releasen']。这就是每次您开始会话时提供给您的内容;在代码的顶部。如果要使用$relnum,则必须在每次页面加载时将$relnum设置为等于$\u SESSION['releasen']。

会话变量为$\u SESSION['releasen']。这就是每次您开始会话时提供给您的内容;在代码的顶部。如果要使用$relnum,必须将$relnum设置为等于$\u SESSION['releasen']在每次页面加载时。

您是否在使用插入查询的php文件顶部使用了session\u start?如果会话已启动,请删除isset session\u start,不要执行任何操作,如果isset$\u session,脚本将不会在会话变量中存储值我已删除isset$\u会话,但仍然存在同样的问题。@OmerZia是会话启动;在所有文件中?是否有$relnum=$\u会话['releasen'];在每个使用该变量的页面上?您是否在使用insert query的php文件顶部使用了session\u start?如果会话已启动,请删除isset session\u start,不要执行任何操作,如果isset$\u session,脚本将不会在会话变量中存储值我已删除isset$\u会话,但仍然存在同样的问题。@OmerZia是会话启动;在所有文件中?是否有$relnum=$\u会话['releasen'];在每个使用该变量的页面上?但我不想取消设置或破坏会话。问题是为什么提交表单后会清除会话值?是否检查您的条件,如果!在这种情况下,您可以访问isset$\会话?但我不想取消或破坏会话。问题是为什么提交表单后会清除会话值?是否检查您的条件,如果!isset$\u在此情况下您可以到达的会话?首先,会话变量成功回送并显示数据,但在成功提交数据后,它将清除,并且在同一页上不显示任何内容。请确保在尝试使用会话之前调用会话\u start,并始终在重定向标头后退出或退出。我在使用会话之前调用会话\u start。起初,会话变量成功回送并显示数据,但在成功提交数据后,它将清除,并且在同一页面上不显示任何内容。请确保在尝试使用会话之前调用会话\u start,并始终在重定向头之后退出或终止。我在使用会话之前调用会话\u start。已尝试,但在提交表单后,会话变量将清除。尝试了相同的问题,但在提交表单后,会话变量被清除。同样的问题