我试图创建一个增加和减少变量的脚本。之后,这将发送到mysql查询。我的问题是,即使它的工作原理,下面的代码也有问题。当我按下箭头(按钮)以增加值时,它就可以了,到达值4时,让我们说。现在我想减少,问题是它再次以值0开始,因此它将显示-1,而不是它保留的值4。 这是因为我设置了会话。 $ _SESSION [' addnum'] = $ _SESSION [' subnum'];
我尝试了很多东西,即使我确定它有快速解决方法也无法找到正确的东西。 代码如下(即使没有上传按钮图像也必须工作)
<?php
session_start();
// Page was not reloaded via a button press
if (!isset($_POST['sub'])) {
$_SESSION['subnum'] = 0; // Reset counter
}
if (!isset($_POST['add'])) {
$_SESSION['addnum'] = $_SESSION['subnum'] ;
}
?>
<form method='post'>
<input type="image" name='sub' src="includes/arrow-left.png" alt="Submit" value='-' width="32" height="32">
<input type="image" name='add' src="includes/arrow-right.png" alt="Submit" value='+' width="32" height="32">
<?php
$var = $_SESSION['subnum']-- ;
$var = $_SESSION['addnum']++ ; ?>
</form>
<h3><em>Substract & Add number : </em></h3>
<?php
echo "var = ", $var ;
?>
&#13;
提前致谢
答案 0 :(得分:2)
这里有2个变量。添加时更改的一个,减去时更改的一个。同时,每次加载页面时,重设时更改的值都会重置。加入真的是巧合。
为什么不简化?
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/15.1.0/react.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/15.1.0/react-dom.min.js"></script>
<div id="root"></div>
编辑:我假设图像输入以某种方式触发提交
答案 1 :(得分:1)
您没有处理表单提交。
<?php
session_start();
// Page was not reloaded via a button press
if (!isset($_POST['sub'])) {
$_SESSION['subnum'] = 0; // Reset counter
} else {
$_SESSION['subnum']--;
}
if (!isset($_POST['add'])) {
$_SESSION['addnum'] = $_SESSION['subnum'] ;
} else {
$_SESSION['addnum']++;
}
?>