国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

使用 AJAX 傳遞具有多個(gè) id 的表單並選擇到 PHP
P粉729198207
P粉729198207 2024-02-26 14:17:13
0
1
698

我正在嘗試收集選定的複選框,對(duì)其進(jìn)行更新或刪除操作,並透過(guò)ajax將此表單傳遞給php。我對(duì)這件事很陌生,花了幾天時(shí)間試著找出方法。

網(wǎng)路研究沒有給我任何結(jié)果,我嘗試透過(guò)幾種不同的方式發(fā)送ajax - 沒有結(jié)果。雖然僅使用 PHP,我得到了帶有 select 和 ids 數(shù)組的表單。

如何使其與 AJAX 搭配使用?

我的表單。它放在桌子裡面。表的主體位於 php 檔案中。該文件中的模態(tài)視窗內(nèi)還有其他形式,僅提及是否可能發(fā)生衝突。

<div class="inner">
                <div class="option">
                        <div class="e-table">
                            <div class="table-responsive table-lg mt-3">
                                <form method="post" id="menu_form">
                                <table class="table table-bordered">
                                        <select name="select" id="menu" >
                                            <option value="select">Please select</option>
                                            <option value="set-active">Set active</option>
                                            <option value="set-not-active">Set not active</option>
                                            <option value="delete">Delete</option>
                                        </select>
                                    <thead>
                                        <tr>
                                            <th class="text-nowrap align-middle"><input type="checkbox" id="select-all"></th>
                                            <th>Name</th>
                                            <th>Role</th>
                                            <th>Status</th>
                                            <th>Action</th>
                                        </tr>
                                    </thead>
                                <tbody id="users_data">
                                <input type="submit" value="submit" name="submit_btn" />

                                </tbody>
                                </table>
                                </form>

                            </div>
                        </div>
                </div>
            </div>

這是我正在嘗試使用 AJAX 進(jìn)行的操作。

<script type="text/javascript">
    $(document).ready(function() {
        $('#menu_form').on('submit', function (e) {
            e.preventDefault();

            $.ajax({
                type: 'post',
                url: "process.php",
                data: $('#menu_form').serialize(),
                success: function (response) {
                    console.log(response)
                }
            });
        });
    });

我的 PHP。表的主體和處理表單提交。僅顯示對(duì)其中一個(gè)選項(xiàng)的處理,以免使問題變得更長(zhǎng),其他選項(xiàng)幾乎相同。

<td class="text-nowrap align-middle"><input type="checkbox" name="update_id" value="<?= $row['id'] ?>"></td>
        <td class="text-nowrap align-middle"><?= $row['name']; ?></td>
        <td class="text-nowrap align-middle"><?= $row['role']; ?></td>
        <td class="text-center align-middle">
            <?php if ($row['status'] == 1): ?>
                <i class="fa fa-circle active-circle"></i>
            <?php else: ?>
                <i class="fa fa-circle not-active-circle" style="color:grey"></i>
            <?php endif; ?>
        </td>
        <td class="text-center align-middle"><button class="btn btn-sm btn-outline-secondary badge" type="button"
                    onclick="edit_record(<?= $row['id']; ?>)" >Edit</button>
            &nbsp;<button class="btn btn-sm btn-outline-secondary badge" type="button"
                    onclick="delete_record(<?= $row['id']; ?>)" ><i class="fa fa-trash"></i></button>
        </td>
    </tr>

if(isset($_POST['submit_btn'])) {
    $idArray = $_POST['update_id'];
    $idString = implode(',', $idArray);

    if (isset($_POST['select']) && $_POST['select'] == 'set-active') {
        $statement = $pdo->prepare("UPDATE user SET status = 1 WHERE id IN ($idString)");
        $result = $statement->execute();
        if ($result) {
            $response = array('status' => true, 'message' => 'Record edited successfully.');
        }else{
            $response = array('status' => true, 'message' => 'Error');
        }

        echo json_encode($response);    
    }

P粉729198207
P粉729198207

全部回覆(1)
P粉244730625

在我看來(lái),問題出在這裡:

if(isset($_POST['submit_btn'])) {

表單中的不是正文/有效負(fù)載的一部分 與POST 請(qǐng)求一起發(fā)送(畢竟,它是一個(gè)按鈕,並且不包含任何對(duì)伺服器有用的信息)。

因此,上面的 if() 檢查將始終為 false,並且 if() 區(qū)塊內(nèi)的所有程式碼區(qū)塊都會(huì)失敗。不會(huì)被執(zhí)行。

最新下載
更多>
網(wǎng)站特效
網(wǎng)站源碼
網(wǎng)站素材
前端模板