在php中提交表单后,保留变量的前一个值


keep the previous value of variable after submitting the form in php

我有一个带有按钮"NEXT"的表单,单击后需要更改变量的值。我已经将变量初始化为0,我希望当NEXT按钮被点击时,变量应该增加1。因为,当按钮被单击时,我也提交了表单,所以变量被重置为0,它没有保持以前的值。

html代码为:

       <form name="graph" enctype="multipart/form-data" method="POST" action="graph.php">   
       <input type="hidden" id="hdn" name ="hdn" value="">
        <input type="button" id="btnNext" name ="btnNext" value="NEXT" onClick="nextfun();">

点击NEXT,我调用一个javascript函数来提交表单,

       function nextfun()
       {
            var a= document.getElementById("hdn");
                a.value="nextgroup";
               document.graph.submit();
       }

现在,当表单提交时,我使用php代码来增加变量的值。

     $flag=0;
   if(isset($_POST['hdn']))
    {
       if($_POST["hdn"]=="nextgroup")
         {
            $flag=$flag+1;
          }
     }

graph.php页面上这样做:-

<?php
session_start();
if(isset($_POST['hdn']))
    {
       if($_POST["hdn"]=="nextgroup")
         {
            if(isset($_SESSION['flag'])){
                $_SESSION['flag'] = $_SESSION['flag']+1;
            }else{
                $_SESSION['flag'] = 1;
            }
          }
     }
echo $_SESSION['flag'];
?>

注意:-第一次会话值将为1,下一次以后每次提交它将增加1.

您可以在HTML中添加如下内容:

<input type="hidden" name="prevValue" value="<?php echo $prev; ?>" />

你也应该提交这个值。

PHP

         $flag=0;
       if(isset($_POST['hdn']))
        {
           if($_POST["hdn"]=="nextgroup")
             {
                $prev = $_POST["prevValue"];
                $flag = $prev +1;
              }
         }