簡體   English   中英

每行PHP Bootstrap 4模態刪除按鈕

[英]PHP bootstrap 4 modal delete button in each row

美好的一天! 我收到一個錯誤消息:“未定義的變量:id”。

我創建了一個表格,該表格的每一行都有一個刪除按鈕,單擊后會彈出一個模態對話框,詢問我是否要刪除該行。 但是,每當我單擊刪除按鈕時,都會顯示錯誤未定義變量:id,並且不會刪除數據。

這是我的表格代碼:

if(isset($_POST['delete'])) {
        $data->delete_multiple($id, $conn);

    }

    <table class="table table-hover table-bordered" id="table1">
                                    <thead>
                                        <tr>
                                            <th>Faculty Code</th>
                                            <th>Last Name</th>
                                            <th>First Name</th>
                                            <th>Middle Name</th>
                                            <th>Position</th>
                                            <th></th>
                                            <th>Status</th>
                                        </tr>
                                    </thead>
                                    <tbody>
                                        <?php  while ($row = $result -> fetch_object()): ?>
                                        <tr>
                                            <td><?php echo  $row->Faculty_ID;?></td>
                                            <td><?php echo $row->Faculty_Lastname ?></td>
                                            <td><?php echo $row->Faculty_Firstname ?></td>
                                            <td><?php echo $row->Faculty_Middlename?></td>
                                            <td><?php echo $row->Position; ?></td>
                                            <td class="text-center">
                                                <a  class="btn btn-sm btn-outline-primary text-muted" href="Faculty_edit.php?Faculty_ID=<?php echo $row->Faculty_ID;?>">Edit</a>
                                                <a type="button"  title="Delete Faculty" data-toggle="modal" data-target="#delete_modal"  class="btn btn-sm btn-outline-danger" >Delete</button></td>
                                            <td>
                                                <?php if($row->Status=='Active') echo '<a href="#deactive_account" data-toggle="modal" data-id='.$row->Faculty_ID.' class="activate" style="color:green;">Active</a>'; ?>
                                                <?php if($row->Status=='Inactive') echo '<a href="#active_modal" data-toggle="modal" data-id='.$row->Faculty_ID.' class="activate" style="color:red;">Inactive</a>'; ?>
                                            </td>
                                        </tr>
                                        <?php endwhile; ?>
                                    </tbody>
                                </table>

我的模態代碼:

<div class="modal fade" id="delete_modal" role="dialog">
                      <div class="modal-dialog">
                        <div class="modal-content">
                          <!-- Modal Header -->
                          <div class="modal-header">
                            <h4 class="modal-title">Delete Confirmaiton</h4>
                            <button type="button" class="close" data-dismiss="modal">&times;</button>
                          </div>
                          <!-- Modal body -->
                          <div class="modal-body">
                            <div class="alert alert-danger" role="alert">
                              Are you sure you want to delete selected record?
                            </div>
                          </div>
                          <!-- Modal footer -->
                          <div class="modal-footer">
                            <button type="button" class="btn btn-default" data-dismiss="modal">No</button>
                            <button type="submit" class="btn btn-danger" name="delete">Yes</button>
                          </div>
                        </div>
                      </div>
                    </div>

刪除功能碼:

 function delete_multiple($id, $conn){


         $id = $_POST['delete'];
         $sql = "DELETE FROM faculty WHERE Faculty_ID=? ";
            $stmt = $conn->prepare($sql);
            $stmt->bind_param("i", $id);
            $stmt->execute();    
        }

那是因為您沒有將行ID傳遞給模式彈出窗口。

將教職員工ID添加到您的“刪除”按鈕,並為其添加一個唯一的班級“ delete-faculty-btn”。 參考。 到下一行

<a type="button" data-fid="<?php echo  $row->Faculty_ID;?>" title="Delete Faculty" data-toggle="modal" data-target="#delete_modal"  class="btn btn-sm btn-outline-danger delete-faculty-btn" >Delete</button></td>

將您的模式彈出式頁腳更改為:-

<div class="modal-footer">
                        <button type="button" class="btn btn-default" data-dismiss="modal">No</button>
                        <input type="hidden" name="delete" value="" id="row-id-to-delete" />
                        <button type="submit" class="btn btn-danger" >Yes</button>
                      </div>

並添加以下Javascript腳本:-

$(document).on('click', '.delete-faculty-btn', function(){
    $("#row-id-to-delete").val($(this).data('fid'));
});

我的假設是在HTML表單內的模式彈出窗口中有“提交”按鈕。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM