Как принять или отклонить данные, используя флажок в codeiginter? - PullRequest
0 голосов
/ 06 марта 2020

Я принимаю и отклоняю некоторые данные, нажимая флажок. Из моего кода принимается, что код работает хорошо, но отклонен код того же типа, но не работает.

Код моей страницы просмотра:

 <form  class="form-horizontal" method="POST" action="<?=site_url('Request/Update_Event')?>">
    <div class="panel panel-flat" id="id">
      <div  class="panel-heading">
       <center> <h4 class="panel-title">Request Portal</h4></center>

      </div> <button type="submit" class="btn btn-info btn-lg">
          <span class="glyphicon glyphicon-thumbs-up"></span>Approved
        </button> <a href="<?=site_url('Request/Rejected')?>" class="btn btn-info btn-lg" id="but">
          <span class="glyphicon glyphicon-thumbs-down"></span> Rejected
        </a><div>

Код моего контроллера:

public function Update_Event(){
    $empid = $this->input->post('empid');
        for($i=0; $i< sizeof($empid); $i++)
    {

        $data = array(
            'backgroundColor' => 'green',
            'event_status' =>'Approved',
        );
        $this->db->where(empid,$empid[$i]);
        $this->db->update('events',$data);
}

redirect('Request','refresh');
}
public function Rejected(){
$empid = $this->input->post('empid');
        for($i=0; $i< sizeof($empid); $i++)
    {

        $data = array(
            'backgroundColor' => 'red',
            'event_status' =>'Rejected',
        );
        $this->db->where(empid,$empid[$i]);
        $this->db->update('events',$data);
}

redirect('Request','refresh');
print_r($empid);
}

Код моей таблицы:

<table id="tb2" class="table datatable-responsive" >
    <thead><tr><h6><th></th><th  align="center">Name</th>
            <th class="col-sm" >Leave Date</th>
            <th class="col-sm" >Reason</th>
    </tr></thead>
            <?php foreach ($query as $row): ?>                          
    <tr><td><input type="checkbox" name="empid[]" value="<?php echo $row['empid'];?>"></td>
    <td>Leave Applied By <?php echo $row['first_name'];?> <?php echo $row['last_name'];?></td>
    <td><?php echo date('d/m/Y', strtotime($row['event_date']));?></td>
    <td><?php echo $row['title'];?> </td>

</tr></tbody><?php endforeach ?>
    </table>    

Отклоненный код не работает в моем коде, и empid не передается Отклоненному коду когда я печатаю значение empid

1 Ответ

2 голосов
/ 06 марта 2020

Вы столкнулись с этой проблемой, потому что во время утверждения вы отправляете форму, а во время отказа вы только нажимаете на ссылку. Поэтому, когда вы нажимаете кнопку «Отклонить», она не будет публиковать значения для контроллера.

Вы можете сделать что-то вроде этого. просто передайте дополнительный параметр, чтобы отклонить функцию.

<a href="<?=site_url('Request/Rejected/123')?>" class="btn btn-info btn-lg" id="but">
          <span class="glyphicon glyphicon-thumbs-down"></span> Rejected
</a>


public function Rejected($empid = ''){
        for($i=0; $i< sizeof($empid); $i++)
    {

        $data = array(
            'backgroundColor' => 'red',
            'event_status' =>'Rejected',
        );
        $this->db->where(empid,$empid[$i]);
        $this->db->update('events',$data);
}

redirect('Request','refresh');
print_r($empid);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...