не могу удалить запись в codeigniter используя href - PullRequest
0 голосов
/ 17 мая 2018

Я пытаюсь удалить конкретную запись, используя href. Но он не работает должным образом, когда я нажимаю на кнопку, передавая URL-адрес, как это

http://localhost/project_x/Organisation/Organisation/%3C?php%20echo%20base_url();?%3EOrganisation/delete_org?id=3

Я не знаю, где ошибка, может кто-нибудь мне помочь. Идентификатор в URL-адресе указан правильно.

Вот мой контроллер:

function delete_org() {
   // Pass the $id to the org_delete() method
      $this->Org_model->org_delete($id);
      redirect('Organisation/organisation');
}

вот моя функция организации перенаправления

public function organisation() {

    $data['organisations'] = $this->Org_model->getOrganisations();
    $this->load->view('template/header');
    $this->load->view("organisation", $data);
    $this->load->view('template/footer');
}

Вот моя модель:

function org_delete($id) {
    $this->db->where('id', $id);
    $this->db->delete('organisation');
}

А вот мои кнопки просмотра:

<?php
echo "<td class='text-center'><div class='btn-group btn-group-xs'><a href='#' data-logid='" . $org->id . "' data-target='#editGroups' data-toggle='modal' title='Edit' class='open_modal btn btn-default'><i class='fas fa-edit'></i></a>";
echo "<a href='<?php echo base_url();?>/Organisation/delete_org?id=$org->id'  class='btn btn-danger confirmation'><i class='fas fa-times'></i></a></div></td></tr>";                                           
?>

Может ли кто-нибудь помочь мне, где я сделал ошибку.

Заранее спасибо.

Ответы [ 4 ]

0 голосов
/ 18 мая 2018
function delete_org($id= NULL) {

   // Pass the $id to the org_delete() method
      $id = $this->input->post('id');
      $this->Org_model->org_delete($id);
      redirect('Organisation/organisation');
}
hope this helps you
0 голосов
/ 17 мая 2018

Надеюсь, это поможет вам:

Изменить вид кнопок следующим образом:

<?php
echo "<td class='text-center'><div class='btn-group btn-group-xs'><a href='#' data-logid='" . $org->id . "' data-target='#editGroups' data-toggle='modal' title='Edit' class='open_modal btn btn-default'><i class='fas fa-edit'></i></a>";
echo "<a href='".base_url('Organisation/delete_org?id='.$org->id)."'  class='btn btn-danger confirmation'><i class='fas fa-times'></i></a></div></td></tr>";

В контроллере:

function delete_org() { 
      $id = $this->input->get('id');
      $this->Org_model->org_delete($id);
      redirect('Organisation/organisation');
}
0 голосов
/ 18 мая 2018

Вы можете попробовать удалить эту запись, используя каркас кодигнита по атрибуту данных, как показано ниже.

HTML

<a class="deletedata" data-id="<?php echo $data['id] ?>">delete</a>

JS

$(".deletedata").on("click",function(){

  var id=$(this).data('id');
  var baseurl = $("#base_url").val();

  $.post(baseurl+"Products/dltProduct/"+id,function(id){
     window.location.reload();
  });
});

Здесь имя моего контроллера - Products. Вы можете определить свое имя и чем после определить имя вашего метода.

Контроллер

public function dltProduct($id) {
  $this->db->where("id",$id);
  $this->db->delete("tbl_name");
}
0 голосов
/ 17 мая 2018

Проблема в том, что вы снова добавляете php-тег в echo. измените свой тег привязки, как показано ниже:

 echo "<a href='".base_url()."/Organisation/delete_org?id=$org->id'  class='btn btn-danger confirmation'><i class='fas fa-times'></i></a></div></td></tr>";

Также в контроллере определите $ id

function delete_org() {
   // Pass the $id to the org_delete() method
      $id = $_GET['id'];
      $this->Org_model->org_delete($id);
      redirect('Organisation/organisation');
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...