我有将员工添加到数据库的表格。我必须计算在一次会话中增加了多少名雇员,并将其显示在屏幕上的某处。
现在我的form_validation.php看起来像这样:
<?php
session_start();
if(formValidationIsCorrect){
$_SESSION['counter']++;
header("location:pageWithFormDetails.php);
}
在pageWithFormDetails.php
中的我必须显示表单中的员工信息(姓名,年龄等),以及在此会话中增加了多少名雇员。
我的问题是,在pageWithFormDetails.php
上
我会
<?php echo $_SESSION['counter']; ?>
始终显示 1 ,即使我重新填写表格几次也是如此。我想每次填写表格时,我的counter
变量都会被重置,然后以 1 递增。有没有办法在我每次填写表格并进行验证时都不重置此变量?
答案 0 :(得分:0)
您需要先使用数据库输入,然后再使用输出。当您尝试使用$ _SESSION ++时。在那里,可以在db变量中使用++,然后在销毁会话时使用-1。当我需要类似类型的东西时,我就是这样做的。
答案 1 :(得分:0)
您可以尝试使用此代码段并相应地更改代码
<?php
session_start();
if(isset($_POST['submit'])){
array_key_exists('counter', $_SESSION) ? $_SESSION['counter']++ : ($_SESSION['counter'] =1);
echo $_SESSION['counter'];
}
?>
<form action="" method="post">
<input type="submit" name="submit" value="submit" />
</form>