while循环中的Submit按钮不起作用


Submit button inside a while loop doesnt work

我需要帮助使while循环中的提交按钮工作。我设计了一个从DB中获取值的代码,用户必须批准或拒绝提取的值。因此,当用户单击OK时,DB应该更新为OK值。我不知道哪里的问题是我的OK按钮不工作,

当用户单击"确定"时,它应该转到approval.php页面

     <?php
            if ($_POST['action'] == 'show'){
                $requestCompSql = "SELECT REQUEST_COMPONENT_CUTTING.PROJECT_NAME, 
                                          REQUEST_COMPONENT_CUTTING.BASE_PLATE, 
                                          REQUEST_COMPONENT_CUTTING.THICKNESS, 
                                          REQUEST_COMPONENT_CUTTING.QTY_REQUESTED,                                           
                                          REQUEST_COMPONENT_CUTTING.REQUESTER, 
                                          REQUEST_COMPONENT_CUTTING.REQUEST_DATE 
                                                FROM REQUEST_COMPONENT_CUTTING 
                                                WHERE REQUEST_COMPONENT_CUTTING.BASE_PLATE = '{$_POST["bp"]}'";
                $requestCompParse = oci_parse($conn, $requestCompSql);
                oci_execute($requestCompParse);
                while($row = oci_fetch_assoc($requestCompParse)){
                echo "<form action='approval.php'>";
                echo "<div class='table-responsive'>";
                echo "<table class='table table-bordered'>";
                                        echo '<table cellspacing = "0"';
                                            echo '<thead>';
                                            echo '<tr>
                                                      <th>PROJECT</th>
                                                      <th>BASEPLATE</th>
                                                      <th>THICKNESS</th>
                                                      <th>QTY REQUESTED</th>
                                                      <th>REQUESTER</th>   
                                                      <th>REQ. DATE</th>
                                                      <th align="center">ACTION</th>  
                                                  </tr>
                                                  </thead>';
                                             echo "<tbody>";
                                                echo "<tr class='warning'><td>$row[PROJECT_NAME]</td>";
                                                echo "<td>$row[BASE_PLATE]</td>";
                                                echo "<td>$row[THICKNESS]</td>";
                                                echo "<td>$row[QTY_REQUESTED]</td>";
                                                echo "<td>$row[REQUESTER]</td>";
                                                echo "<td>$row[REQUEST_DATE]</td>";
                                                echo "<td><input type='button' value='OK' class='btn btn-success'>
                                                    <input type='button' value='REJECT' class='btn btn-danger'></td>";
                                                echo "</tr>";
                                             echo "</tbody>";
                                         echo "<table cellspacing = '0'";
                                         echo "</form>";
                                         echo "</div>";
                }
            }
            ?>

对于提交按钮,您需要使用

    <input type="submit" value="OK">

您使用了

    <input type="button" value="OK">

其可用于javascript执行。拒绝按钮也是如此。然而,您可以使用以下内容发送带有javascript的表单(不建议使用javascript,因为有些人选择使用javascript(:

    <input type="button" value="OK" onClick="document.forms[0].submit()">

按钮需要为类型="submit",而不仅仅是类型="button">

echo "<td><input type='submit' value='OK' class='btn btn-success'>

您的代码中存在一些问题。首先,如果您通过表单发布数据,那么表单应该有method属性,如:

 echo "<form action='approval.php' method='post'>";

其次,如果您在单击按钮时提交表单,那么按钮的类型应该是submit,而不是button

<input type='submit' value='OK' class='btn btn-success'>

由于您使用的是type='button',您应该添加Javascript来提交表单,如onclick='submit();'