表单提交后清除PHP会话数据
我将会话数据存储在$relnum变量中,如下所示:表单提交后清除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
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。已尝试,但在提交表单后,会话变量将清除。尝试了相同的问题,但在提交表单后,会话变量被清除。同样的问题