[英]PHP Session data clears after form submit
我將會話數據存儲在$ 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"/>
我正在mysql中提交上述Form數據,如下所示;
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變量不顯示任何內容。 我無法理解是什么原因,因為我將數據存儲在會話中。
PS:我沒有使用unset。
請幫助,我想念的是什么?
您無需以表格形式發布會話數據,否則您的代碼看起來不錯。 您可以通過以下形式將其發布,從而輕松實現:
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";
}
它將正常工作,請對其進行測試。
謝謝
請記住, session_start()
僅將臨時變量存儲在服務器端,請檢查是否在每個頁面上都有session_start()
,以檢查僅在該頁面上回顯您的會話變量,如果它沒有回顯任何內容,則檢查先前的位置會話變量,它可以幫助您自己解決問題。
您可以嘗試以下代碼:
if (isset($_POST['release_no']) && !empty($_POST['release_no'])) {
session_start();
$_SESSION['releasen'] =$_POST['release_no'];
$relnum= $_SESSION['releasen'];
}
會話變量為$_SESSION['releasen']
。 這就是每次您擁有session_start();
在代碼的頂部。 如果要使用$ relnum,則必須在每次加載頁面時將$ relnum設置為等於$_SESSION['releasen']
。
采用
session_unset();
session_destroy();
希望這個幫助
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.