我有一个名为“$ SessionMinus”的变量。我想要做的是,每次提交或刷新表单时,它每次都会将数字加1,因此它将从1开始,然后是2,然后是3 ......所有最高的数字都是“ $ _SESSION ['sessionNum']。如何做到这一点?
谢谢
<?php
session_start();
$sessionMinus = 1;
if(isset($_POST['sessionNum'])){
//Declare my counter for the first time
if ($sessionMinus < $_SESSION['sessionNum'])
{
$sessionMinus++;
}
$_SESSION['initial_count'] = $_POST['sessionNum'];
$_SESSION['sessionNum'] = $_POST['sessionNum'];
}
?>
<body>
<?php
echo $sessionMinus;
?>
<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" /></p>
</form>
<?php
$outputDetails = "";
$outputDetails .= "
<table id='sessionDetails' border='1'>
<tr>
<th>Number of Sessions:</th>
<th>{$_SESSION['initial_count']}</th>
</tr>";
$outputDetails .= " </table>";
echo $outputDetails;
?>
</body>
答案 0 :(得分:2)
如果我理解正确,您只需在第一个条件下增加$sessionMinus++;
?
if(isset($_POST['sessionNum']))
{
if ($sessionMinus < $_SESSION['sessionNum'])
{
$sessionMinus++;
}
}
这样,每隔一段时间,有人会提交表单(定义{{1}}时),$_POST['sessionNum']
会递增。
答案 1 :(得分:0)
您似乎正在尝试跟踪会话开始的次数,最多可达到最长时间。创建一个计数会话变量,并最初为其分配一个。每次加载会话时,增量然后将此新变量分配给'sessionMinus'
<?php
session_start();
if(isset($_POST['sessionNum'])){
$_SESSION['sessionNum'] = $_POST['sessionNum'];
}
if(!isset($_SESSION['sessionCount'])){
$_SESSION['sessionCount'] = 1;
}
else
{
$_SESSION['sessionCount']++;
}
$sessionMinus = $_SESSION['sessionCount'];
?>
编辑:在第二个问题上犯了一个小错误......纠正了它