下面我有一个应用程序。现在,在上一页的用户输入数字并将表单提交到此页面。然后在此页面中显示该号码。现在在这个页面上,用户将表单提交给自己,但问题是数字会消失。在将表单提交给自己后,如何保留显示的数字?
<?php
session_start();
//validate the post data if necessary
$_SESSION['sessionNum'] = $_POST['sessionNum'];
?>
<script type="text/javascript">
function showConfirm(){
var confirmMsg=confirm("Make sure that your details are correct, once you proceed after this stage you would not be able to go back and change any details towards Questions, Options and Answers for your Session." + "\n" + "\n" + "Are you sure you want to Proceed?" + "\n" );
if (confirmMsg==true)
{
submitform();
}
}
function submitform()
{
var sessionMarksO = document.getElementById("sessionMarks");
sessionMarksO.submit();
}
</script>
<body>
<form id="enter" action="<?php echo htmlentities($_SERVER['PHP_SELF']); ?>" method="post" onsubmit="return validateForm(this);" >
<p><input id="submitBtn" name="submitDetails" type="submit" value="Submit Details" onClick="myClickHandler(); return false;" /></p>
</form>
<script type="text/javascript">
function myClickHandler(){
if(validation()){
showConfirm();
}
}
</script>
<?php
$outputDetails = "";
$outputDetails .= "
<table id='sessionDetails' border='1'>
<tr>
<th>Number of Sessions:</th>
<th>$_SESSION['sessionNum']</th>
</tr>";
$outputDetails .= "</table>";
echo $outputDetails;
?>
答案 0 :(得分:1)
更改:
$_SESSION['sessionNum'] = $_POST['sessionNum'];
到
if (isset($_POST['sessionNum'])) {
$_SESSION['sessionNum'] = $_POST['sessionNum'];
}
除非您发布名称为sessionNum
sessionNum
答案 1 :(得分:0)
您可以使用 isset 查看会话是否存在
$_SESSION['session_num'] = (isset($_SESSION['session_num'])) ?
$_SESSION['session_num'] :
$_POST['num];
答案 2 :(得分:0)
<script type="text/javascript">
$(document).ready(function() {
$('form').submit(function(){
<? if (isset($_POST['sessionNum']))
{
$_SESSION['sessionNum'] = $_POST['sessionNum'];
}
? >
}