Hola!
Tengo armado un crud con grocery al cual le agregué un botón (además del editar y borrar) en el que pretendo que al hacer click se copie ese registro a otra tabla y luego se elimine.
Es decir tengo la
tabla pendientes donde tengo cargados datos y al hacer click en el botón en cuestión quiero que ese registro se copie a la
tabla clientes y se elimine de la tabla pendientes y se envie un mail a ese cliente (esto no lo tengo desarrollado aún)
Ambas tablas tienen los mismos campos.
Copio el código que tengo, pero no está funcionando y no encuentro cual es el problema.
mi
controlador pendientes.php Código PHP:
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class Pendientes extends CI_Controller {
function __construct()
{
parent::__construct();
$this->template->set_layout('layout.php');
$this->load->database();
$this->load->library('grocery_crud');
$this->load->helper('url');
}
function index()
{
}
function pendientes_v()
{
$this->load->view('layouts/header');
$this->load->view('layouts/menu');
try{
$crud = new grocery_CRUD();
$crud->set_theme('datatables');
$crud->set_table('pendientes');
$crud->set_subject('Pendientes');
$crud->set_language('spanish');
$crud->required_fields(
'id',
'nombre',
'email',
'empresa',
'telefono'
);
$crud->columns(
'id',
'nombre',
'email',
'empresa',
'cuit',
'direccion',
'telefono',
'clave'
);
$crud->add_action('Enviar', '', 'pendientes/pendientes_v/copiarpendientes','ui-icon-plus');
$output = $crud->render();
$this->load->view('pendientes/pendientes_v', $output);
}catch(Exception $e){
show_error($e->getMessage().' --- '.$e->getTraceAsString());
}
$this->load->view('layouts/footer');
}
function copiarpendientes($id)
{
$this->load->model('clientes_modelo','clientes');
$this->load->model('pendientes_modelo','pendientes');
$this->clientes->insert($id);
$this->pendientes->delete($id);
}
}
y dentro de la carpeta models
clientes_modelo.php Código PHP:
<?php
class Clientes_modelo extends CI_Controller
{
public function insert($id) {
$this->db->where('id',$id);
$rs = $this->db->get('pendientes')->result_array();
$data['id'] = $rs['id'];
$data['nombre'] = $rs['nombre'];
$data['email'] = $rs['email'];
$data['empresa'] = $rs['empresa'];
$data['cuit'] = $rs['cuit'];
$data['direccion'] = $rs['direccion'];
$data['telefono'] = $rs['telefono'];
$data['clave'] = $rs['clave'];
$this->db->insert('clientes', $data);
}
}
y
pendientes_modelo.php Código PHP:
<?php
class Pendientes_modelo extends CI_Controller
{
public function delete($id){
$this->db->delete('pendientes', array('id'=>$id));
}
}
Espero puedan ayudarme, desde ya muchas gracias!