douya2982 2014-10-02 00:25
浏览 101
已采纳

如何在单个HTML表单中处理两个不同的提交按钮?

If I have a form as in the below script:

<html> 
 <?php
   session_start();

     $con=mysqli_connect("localhost","root","","QSTNS");
      if (mysqli_connect_errno()) {
          echo "Failed to connect to MySQL: " . mysqli_connect_error();
        }

       $dsply=$_SESSION['q_indx'][$_SESSION['cindx']] ; 
      //echo $dsply ;
      $qstn = mysqli_query($con,"SELECT * FROM qstns where qid = '". $dsply ."'");

      $qstn = $qstn->fetch_array(MYSQLI_ASSOC);

       //echo $qstn['qname'] . "<br>";
       //echo $qstn['opta'] ."<br>";
       //echo $qstn['optb']."<br>";
       //echo $qstn['optc']."<br>";
       //echo $qstn['optd']."<br>";

        mysqli_close($con);
           ?>

        <body>

     <?php echo $qstn['qname'] ."<br>"; ?>
     <form action="prcs_ansr.php" method="post">
      <input type="radio" name="rply" value="A" /><?php echo $qstn['opta'] ; ?><br />
     <input type="radio" name="rply" value="B" /><?php echo $qstn['optb']; ?> <br />
     <input type="radio" name="rply" value="C" /><?php echo $qstn['optc']; ?><br />
     <input type="radio" name="rply" value="D" /><?php echo $qstn['optd']; ?> <br/>
     <input type="submit" value="previous">
     <input type="submit" value="next">
      </form>


     </body>
      </html>

I have two buttons in a single form and I want to process each one separately and for that I used isset() but it didn't work. The code for the next page is:

           <?php
          session_start() ;

          $con=mysqli_connect("localhost","root","","QSTNS");
         if (mysqli_connect_errno()) {
         echo "Failed to connect to MySQL: " . mysqli_connect_error();
          }

         if (isset($_POST['previous'])) {
         if($_SESSION['cindx']>0)
         $_SESSION['cindx']-=1;
         }
         if(isset($_POST['next']))
           {
         $res=mysqli_query($con, 'SELECT COUNT(*) FROM qstns');
         $row = mysqli_fetch_array($res);
         //echo $row[0];

         if($_SESSION['cindx']<$row[0]-1)
         $_SESSION['cindx']+=1;
           }
        //echo 'here';
        header('Location: quiz_start.php');

    mysqli_close($con); 
     ?>

Can anyone help?

展开全部

  • 写回答

2条回答 默认 最新

  • duandang2123 2014-10-02 00:28
    关注

    Your submit buttons have no name, only a value. So the things you check as isset are never set.

    <input type="submit" name="next" value="next"/>
    

    That will help.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)
编辑
预览

报告相同问题?

手机看
程序员都在用的中文IT技术交流社区

程序员都在用的中文IT技术交流社区

专业的中文 IT 技术社区,与千万技术人共成长

专业的中文 IT 技术社区,与千万技术人共成长

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

客服 返回
顶部