Advertisement
Guest User

Untitled

a guest
Jan 20th, 2019
225
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 3.97 KB | None | 0 0
  1. //Esta función carga la vista del gestor de ofertas con la paginación
  2. function gestor_ofertas($offset = 0) {
  3.  
  4.         //Guardamos todas las ofertas registradas
  5.         $ofertas = $this->Ofertas_model->getOfertas();
  6.         //Guardamos la configuración de la paginación
  7.         $config['base_url'] = base_url("admin/gestor_ofertas");
  8.         $config['per_page'] = 5; //Registros por página
  9.         $config['total_rows'] = count($ofertas);
  10.         $config['full_tag_open'] = "<div class='pagging text-center'><nav><ul class='pagination justify-content-center mb-4'>";
  11.         $config['full_tag_close'] = "</ul></nav></div>";
  12.         $config['num_tag_open'] = "<li class='page-item'><span class='page-link'>";
  13.         $config['num_tag_close'] = "</span></li>";
  14.         $config['cur_tag_open'] = "<li class='page-item active'><span class='page-link'>";
  15.         $config['cur_tag_close'] = "<span class='sr-only'>(current)</span></span></li>";
  16.         $config['next_tag_open'] = "<li class='page-item'><span class='page-link'>";
  17.         $config['next_tagl_close'] = "<span aria-hidden='true'>&raquo;</span></span></li>";
  18.         $config['prev_tag_open'] = "<li class='page-item'><span class='page-link'>";
  19.         $config['prev_tagl_close'] = "</span></li>";
  20.         $config['first_tag_open'] = "<li class='page-item'><span class='page-link'>";
  21.         $config['first_tagl_close'] = "</span></li>";
  22.         $config['last_tag_open'] = "<li class='page-item'><span class='page-link'>";
  23.         $config['last_tagl_close'] = "</span></li>";
  24.         //Cargamos la configuración de la paginación
  25.         $this->pagination->initialize($config);
  26.         //Guardamos la paginación para pasarla posteriormente a la vista
  27.         $page = $this->Ofertas_model->getPaginate($config['per_page'], $offset);
  28.         //Cargamos la vista del gestor de ofertas
  29.         $content = $this->load->view("admin/gestor_ofertas", array("data" => $page, "paginacion" => $this->pagination->create_links()), TRUE);
  30.         getTemplate($this, $content);
  31.     }
  32.  
  33. //Esta es la función del CONTROLADOR que recoge el id mandado por post y llama a la función del modelo para eliminar la oferta
  34.  public function delete_oferta() {
  35.         $id_oferta = $this->input->post("id_oferta");
  36.         $this->Ofertas_model->deleteOferta($id_oferta);
  37.         $this->session->set_flashdata("msg", "Se ha eliminado correctamente");
  38.         redirect("admin/gestor_ofertas");
  39.     }
  40.  
  41. //Esta es la función del MODELO que ejecuta la consulta que elimina la oferta de la base de datos
  42. public function deleteOferta($id_oferta) {
  43.         $this->db->delete('oferta', array('id_oferta' => $id_oferta));
  44.     }
  45.  
  46. //Esta es la VISTA donde se muestran los datos de las ofertas y los botones de acción editar y eliminar
  47.  <?php foreach($data as $oferta){ ?>
  48.         <tr>
  49.             <th scope="row">
  50.                 <?=$oferta->id_oferta;?>
  51.             </th>
  52.             <td>
  53.                 <?=$oferta->titulo;?>
  54.             </td>
  55.             <td>
  56.                 <?= $oferta->precio;?>
  57.             </td>
  58.             <td>
  59.                 <?=$oferta->categoria;?>
  60.             </td>
  61.             <td>
  62.                 <?=date_format(new DateTime($oferta->fecha_oferta), "d/m/Y")?>
  63.             </td>
  64.             <td><a href="<?=base_url('admin/edit_oferta/' . $oferta->id_oferta)?>" class="btn btn-warning" role="button"><i class="fas fa-edit"></i> Editar</a> </td>
  65.             <td>
  66.               <a href="#" class="btn btn-danger btn-delete-oferta" role="button" data-id="<?=$oferta->id_oferta;?>"><i class="fas fa-times"></i> Eliminar</a>
  67.             </td>
  68.         </tr>
  69.         <?php }?>
  70. <?=$paginacion?>
  71.  
  72. //Esta función realiza la consulta para crear la paginación
  73. public function getPaginate($limit, $offset) {
  74.  
  75.         $sql = $this->db->order_by("id_oferta", "DESC")->get("oferta", $limit, $offset);
  76.        
  77.         if ($sql->num_rows() > 0) {
  78.             return $sql->result();
  79.         } else {
  80.             return false;
  81.         }
  82.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement