簡體   English   中英

Codeigniter PHP中的模式確認框

[英]Modal Confirm Box in Codeigniter PHP

我在我的項目(PHP codeigniter)中有一個視圖,用戶可以在其中確認或從顯示的數據表中刪除特定記錄。 當用戶選擇確認記錄時,將顯示一個模式彈出框,以確保確認。 單擊此模式中的“ 確認”按鈕將調用控制器方法,以通過隨后的模型方法調用適當地更新數據庫表。 這同樣適用於視圖中的刪除功能。 我已經實現並調用了所有相應的方法,但是它似乎沒有任何影響。

上下文中的代碼

1.查看

<body>
    <div class="content" style="background-color: white">
        <div class="container-fluid" style="overflow-y: auto">

            <legend>Vacancies Applied</legend>
            <div>
                <form class="form-horizontal" id="viewVacancy">
                    <?php echo $this->session->flashdata('msgconfirmed');
                    echo $this->session->flashdata('msgremoved');?>

                    <table class="table"  id="vacancyApplicationTable" >
                        <thead class="active">
                        <tr style="background-color: lightblue;color: white" >
                            <th class="hidden-lg hidden-lg">ID</th>
                            <th>Company</th>
                            <th>Job Title</th>
                            <th>Applied Date</th>
                            <th>Closing Date</th>
                            <th>Status</th>
                            <th></th>
                            <th></th>
                        </tr>
                        </thead>
                        <tbody >
                        <?php
                        if(count($vacanciesApplied)>0) {
                            foreach ($vacanciesApplied as $row) { ?>
                                <tr>
                                    <td class="hidden-lg hidden-lg"><a><?php echo $row->vid; ?></a></td>
                                    <td><?php echo $row->onBehalfOf; ?></td>
                                    <td><?php echo $row->jobTitle; ?></td>
                                    <td><?php echo $row->appliedDate; ?></td>
                                    <td><?php echo $row->closingDate; ?></td>
                                    <?php
                                    if ($row->status == "pending") 
                                    {
                                        $status = "Pending";
                                        ?>
                                        <td><?php echo $status ?></td>
                                        <td></td>
                                        <td><a data-toggle="modal" data-name="<?php echo $row->vid; ?>" data-id="<?php echo $row->studentId; ?>" title="Add this item" class="open-AddBookDialog btn btn-danger" href="#deleteVacancyApplication">Remove</a></td>
                                        <?php
                                    } 
                                    else 
                                    {
                                        $status = "Accepted"; ?>
                                        <td class="blink_text"><?php echo $status ?></td>
                                        <td><a data-toggle="modal" data-name="<?php echo $row->vid; ?>" data-id="<?php echo $row->studentId; ?>" title="Add this item" class="open-AddBookDialog btn btn-info" href="#confirmVacancyStatus">Confirm</a></td>
                                        <td><a data-toggle="modal" data-name="<?php echo $row->vid; ?>" data-id="<?php echo $row->studentId; ?>" title="Add this item" class="open-AddBookDialog btn btn-danger" href="#deleteVacancyApplication">Remove</a></td>
                                        <?php
                                    }
                                    ?>
                                </tr>
                            <?php }
                        }
                       ?>
                        </tbody>
                    </table>
                </form>
            </div>
        </div>
    </div>
</body>

<script>
    $(function () {
        $('#vacancyApplicationTable').DataTable({
            "paging": true,
            "lengthChange": true,
            "searching": true,
            "ordering": true,
            "info": true,
            "autoWidth":true
        });
    });
</script>

<script>
    $(document).on("click", ".open-AddBookDialog", function () {
        var studentId = $(this).data('id');
        var vid = $(this).data('name');
        $(".modal-body #uid").val( studentId );
        $(".modal-body #vid").val( vid );
    });
</script>

<!-- Modal for confirmVacancyStatus -->
<div class="modal fade" id="confirmVacancyStatus" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" data-keyboard="false" data-backdrop="false">
    <div class="modal-dialog">
        <div class="modal-content">
            <div class="modal-header" style="background-color:lawngreen">
                <button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
                <h4 id="uid"><i class="glyphicon glyphicon-check"></i>&nbsp;Confirm</h4>
            </div>
            <div class="modal-body">
                <form method="post" id="formConfirm" action="<?php echo base_url() . 'index.php/studentDashboardController/confirmVacancy'?>">
                    <input type="text" name="vid" id="vid" value="" hidden/>
                    <div class="form-group">
                        <p>You got Accepted to follow this vacancy</p>
                        <p>Do you confirm this?</p>
                    </div>
                </form>
            </div>
            <div class="modal-footer">
                <button type="submit" class="btn btn-success pull-right">Confirm</button>
            </div>
        </div>
    </div>
</div>

<!-- Modal for deleteVacancyApplication -->
<div class="modal fade" id="deleteVacancyApplication" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" data-keyboard="false" data-backdrop="false">
    <div class="modal-dialog">
        <div class="modal-content">
            <div class="modal-header" style="background-color:red">
                <button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
                <h4 id="uid"><i class="glyphicon glyphicon-remove"></i>&nbsp;Cancel</h4>
            </div>
            <div class="modal-body">

                <form method="post" id="form"  action="<?php echo base_url() . "index.php/studentDashboardController/deleteVacancyRequest"?>">
                    <input type="text" name="vid" id="vid" value="" hidden/>
                    <div class="form-group">
                        <p>Are you sure you want to cancel your application for this vacancy</p>
                    </div>
                </form>
            </div>
            <div class="modal-footer">
                <button type="submit" class="btn btn-danger pull-right">Cancel Application</button>
            </div>
        </div>
    </div>
</div>

2.Controller-studentDashboardController / confirmVacancy

public function confirmVacancy()
{
    if (isset($this->session->userdata['logged_in']))
    {
        $uid = ($this->session->userdata['logged_in']['userId']);

        $data['notifyCount']=  $this->notifications->getUnreadNotification($uid);
        $data['title']=  $this->notifications->getUnreadNotificationTitle($uid);
        $data['notifyCount']=  $this->notifications->getUnreadNotification($uid);
        $data['users'] = $this->user->getUserNames();

        $msg = $this->vacancyModel->confirmVacancyApplication($uid,$this->input->post());
        $msgText = $msg['msg'];
        $msgType = $msg['type'];
        //Loading View
        if($msgType == "danger")
        {
            $this->session->set_flashdata('msgconfirmed', '<div class="alert alert-danger text-center">'.$msgText.'</div>');
        }
        else
        {
            $this->session->set_flashdata('msgconfirmed', '<div class="alert alert-success text-center">'.$msgText.'</div>');
        }

        redirect(base_url('index.php/studentDashboardController/displayVacanciesApplied'));
    }
    else
    {
        $this->load->view('login/loginView');
    }
}

3.模型-空缺模型-> confirmVacancyApplication

public function confirmVacancyApplication($uid, $post)
{
    $vid = $post['vid'];
    $data = array(
        'availability' => $vid+""
    );
    $this->db->where("uid", $uid);
    $status = $this->db->update("studentprofile", $data);
    if($status)
    {
        $msg = "You have successfully confirmed";
        $type = "success";
        $msgData = array(
            'msg' => $msg,
            'type' => $type
        );
        return $msgData;
    }
    else
    {
        $msg = "Sorry. This vacancy could not be confirmed";
        $type = "danger";
        $msgData = array(
            'msg' => $msg,
            'type' => $type
        );
        return $msgData;
    }
}

介面

確認

在這方面的任何建議將不勝感激。

您正在關閉“先提交”按鈕。 將表單放在輸入type =“ submit”標簽之后。 會工作的

暫無
暫無

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

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