2016-09-18 79 views
0

我一直在寻找各种尝试不同的组合。我会尽力解释我所需要的。我有一个填充SQL数据的表,最后一列是一个编辑按钮来打开引导模式。我已经能够填充表格并创建编辑按钮以将行标识传递到模态上,以便对模态上的查询使用数据库上的实际数据填充所有输入。一切正常。但现在我甚至无法在表单上发布POST,我按下了按钮,没有任何反应。Bootstrap Modal提交表格

<?php 
require 'style/header.php'; 
require 'core/db_connect.php'; 
?><div class="main"> 
      <div class="row"> 
       <table class= "table table-striped table-bordered table-hover"> 
        <thead> 
         <tr> 
          <th colspan="1" rowspan="1" style="width: 180px;" tabindex="0">BI/CC</th> 
          <th colspan="1" rowspan="1" style="width: 220px;" tabindex="0">Name</th> 
          <th colspan="1" rowspan="1" style="width: 288px;" tabindex="0">Supplier Number</th> 
          <th colspan="1" rowspan="1" style="width: 40px;" tabindex="0">Actions</th> 
         </tr> 
        </thead> 
        <tbody> 
        <?php 
        $query = "SELECT bicc, name, supplier_number "; 
        $query .= "FROM ext_work_risk "; 
        $result = sqlsrv_query($dbhandle, $query); 
        $i=0; 
        while($fetch = sqlsrv_fetch_array($result)) 
        { 
         if($i%2==0) $class = 'even'; else $class = 'odd';       
         echo'<tr class="'.$class.'"> 
          <td>'.$fetch['bicc'].'</td> 
          <td>'.$fetch['name'].'</td> 
          <td>'.$fetch['supplier_number'].'</td>        <td><a class="modalButton" data-bicc="'.$fetch['bicc'].'"><button type="button" class="btn btn-info btn-sm" data-toggle="modal" data-target="#modal_edit" data-container="body">Edit</button></a></td> 
          </tr>';       
         } 
         ?> 
         </tbody> 
        </table> 
     </div> 
</div> 
<div id="modal_edit" class="modal fade" style="font-weight: normal;"> 
    <div class="modal-dialog"> 
      <div class="modal-content"> 

      </div> 
    </div> 
</div> 
<?php require 'style/footer.php' ?> 

<!-- Script Part --> 
<script type="text/javascript"> 
    $('.modalButton').click(function(){ 
     var bicc = $(this).attr('data-bicc'); 
     $.ajax({url:"modal/ajax_ext_risk_modal_edit.php?bicc="+bicc,cache:false,success:function(result){ 
      $(".modal-content").html(result); 
     }}); 
    }); 
</script> 

现在“莫代尔/ ajax_ext_risk_modal_edit.php”文件:

<?php 
$bicc = $_GET['bicc']; 
//DB connect settins 
require '../core/db_connect.php'; 
$query = "SELECT * "; 
$query .= "FROM ext_work_risk WHERE bicc='$bicc'"; 
$result = sqlsrv_query($dbhandle, $query); 
$fetch = sqlsrv_fetch_array($result); 
?> 
    <!-- Modal --> 
     <div class="modal-header"> 
      <button type="button" class="close" data-dismiss="modal">&times;</button> 
      <h4 class="modal-title">Edit Co-Worker</h4> 
     </div> 
     <div class="modal-body"> 
     <p>To edit just type the new date in the format <b>YYYY/MM/DD</b> and click save. 
      <form class="form-horizontal" role="form" method="POST" action="../core/process_ext_risk_modal.php"> 
       <div class="form-group"> 
       <label class="control-label col-sm-4">BI/CC:</label> 
       <div class="col-sm-7"> 
        <input class="form-control" id="bicc" name="bicc" readonly="readonly" value="<?php echo $fetch['bicc']; ?>"> 
       </div> 
       </div> 
       <div class="form-group"> 
       <label class="control-label col-sm-4">Name:</label> 
       <div class="col-sm-7"> 
        <input class="form-control" id="name" readonly="readonly" value="<?php echo $fetch['name']; ?>"> 
       </div> 
       </div> 
       <div class="form-group"> 
       <label class="control-label col-sm-4">Sup. Number:</label> 
       <div class="col-sm-7"> 
        <input class="form-control" id="supplier_number" readonly="readonly" value="<?php echo $fetch['supplier_number']; ?>"> 
       </div> 
       </div> 
      <div class="form-group"> 
      <label class="control-label col-sm-4">LOTO:</label> 
      <div class="col-sm-7"> 
       <input class="form-control" id="loto" name="loto" <?php $loto = $fetch['loto']->format('Y/m/d'); if ($loto == "2000/01/01") {echo "placeholder='Please insert date'";} else {echo "value='$loto'";} ?>> 
      </div> 
      </div> 
       <div class="form-group"> 
       <label class="control-label col-sm-4">Lift Platform:</label> 
       <div class="col-sm-7"> 
        <input class="form-control" id="lift_platform" <?php $lift_platform = $fetch['lift_platform']->format('Y/m/d'); if ($lift_platform == "2000/01/01") {echo "placeholder='Please insert date'";} else {echo "value='$lift_platform'";} ?>> 
       </div> 
       </div> 
      </form> 
     </div> 
     <div class="modal-footer"> 
      <button type="button" class="btn btn-default" data-dismiss="modal">Close</button> 
      <button type="button" class="btn btn-default btn-success" type="submit" name="submit" value="Submit">Save</button> 
     </div> 

当我打保存按钮没有任何反应。这里是../core/process_ext_risk_modal.php文件:

<?php 
include("db_connect.php"); 
if(isset($_POST["save"])) { 
    $id = $_POST['bicc']; 
    $data = $_POST['loto']; 
    if(sqlsrv_query($dbhandle, "update ext_work_risk set loto='$data' where bicc='$id'")) 
    echo 'success'; 
} 
?> 

这最后一个文件仅仅是当然,我会的形式提交更新更多的数据的测试。

谢谢

+0

提交输入不在表单之外,并使用错误的名称属性 –

+0

是的,谢谢我无法提交表单之外的内容。刚解决这个问题。但不明白你的意思是错误的名称属性。 – rgomez

+0

想我明白了,你的意思是'if(isset($ _ POST [“save”]))',它需要'if(isset($ _ POST [“submit”]))''。我刚刚改变了它,但它仍然不起作用。 – rgomez

回答

1

我刚刚发现的问题由于弗雷德-II提示:

因此,这里是以前的代码块:

</form> 
</div> 
<div class="modal-footer"> 
    <button type="button" class="btn btn-default" data-dismiss="modal">Close</button> 
    <button type="button" class="btn btn-default btn-success" type="submit" name="submit" value="Submit">Save</button> 
</div> 

而现在的纠正一个:

</div> 
    <div class="modal-footer"> 
     <button type="button" class="btn btn-default" data-dismiss="modal">Close</button> 
     <button class="btn btn-default btn-success" type="submit" name="submit" value="Submit">Save</button> 
    </div> 
</form> 

也改变if(isset($_POST["save"]))if(isset($_POST["submit"]))。主要问题是提交外部表单和定义在同一个按钮上的两种类型。