Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/271.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php上一个下一个按钮_Php_Session_Button_Next - Fatal编程技术网

Php上一个下一个按钮

Php上一个下一个按钮,php,session,button,next,Php,Session,Button,Next,我正在尝试制作一个脚本来增加和减少一个变量。之后,这将被发送到mysql查询。我的问题是,下面的代码即使有效,也有问题。当我按下箭头(按钮)增加值时,它是ok的,到达值4。现在我想减少,问题是它再次以值0开始,因此它将显示-1,而不是从它保留的值4开始。 这是因为我在会议中设置。 $_会话['addnum']=$_会话['subnum'] 我尝试了很多方法,但都没有找到正确的方法,即使我确信它有一个快速修复方法。 代码如下(即使不上传按钮图像也必须工作) 减去并添加编号: 您没有处理表单提交

我正在尝试制作一个脚本来增加和减少一个变量。之后,这将被发送到mysql查询。我的问题是,下面的代码即使有效,也有问题。当我按下箭头(按钮)增加值时,它是ok的,到达值4。现在我想减少,问题是它再次以值0开始,因此它将显示-1,而不是从它保留的值4开始。 这是因为我在会议中设置。 $_会话['addnum']=$_会话['subnum']

我尝试了很多方法,但都没有找到正确的方法,即使我确信它有一个快速修复方法。 代码如下(即使不上传按钮图像也必须工作)


减去并添加编号:

您没有处理表单提交

<?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']++;
   }     
?>

这里有两个变量。一个在你加的时候改变,一个在你减的时候改变。同时,每次加载页面时,减法时更改的值都会重置。这个加法真的是巧合

为什么不简化呢

<?php
   session_start();
   // Page was not reloaded via a button press
   if (!isset($_POST['sub']) && !isset($_POST["add"])) {
       $_SESSION['num'] = 0; // Single variable to do both
   }
?>

<form method='post'>

<input type="image" name='sub' src="includes/arrow-left.png" alt="Submit" value='-' width="32">
<input type="image" name='add' src="includes/arrow-right.png" alt="Submit" value='+' width="32">

<?php 
if (isset($_POST["add"])) {   
    $_SESSION["num"] ++;
} else if (isset($_POST["sub"])) {  
    $_SESSION['num']-- ;  
}
$var = $_SESSION['num']; ?> 
</form>

<h3><em>Substract & Add number :  </em></h3>
<?php
echo "var = ", $var ;
?>

减去并添加编号:

编辑:我假设图像输入以某种方式触发提交

//页面没有通过按钮重新加载。如果未刷新,则不会更新$\u会话。你怎么处理这些按钮?它们是如何与服务器交互的?您需要将您提出的问题和给出的解决方案标记为通过接受它们而解决。这正是我想要的。你的代码运行得很好。只是忘了在(isset($\u POST[“add”])和(isset($\u POST[“sub”])处关闭圆括号。我纠正了。