No sé como hacer para insertar datos en una base de datos CodeIgniter PHP

publicado por: Anonymous

he podido capturar los datos de la base de datos, más no poder insertar dentro de ella, no sé como hacer la función para llevar los datos. Aquí los códigos

<?php

class LoginController extends CI_Controller
{
    public function process()
    {
        $this->load->model("LoginModel");
        $this->load->model('AccountModel');
        //$this->load->library('javascript');
        $username = $this->input->post("username");
        $password = $this->input->post("password");

        if ($this->LoginModel->Login($username, $password))
        {
            $data["Cuentas"] = $this->AccountModel->getAllAccountInfo();
            $this->load->view('admin/index', $data);
        }
    }
}
?>

<?php

class AccountModel extends CI_Model 
{
    public function getAllAccountInfo()
    {
        $query = $this->db->query('SELECT cuenta, nombre, buscar, pago, monto, fecha, banco, interes, concepto, cuota, credito, debito FROM accounts');
        return $query->result_array();
    }

    public function saveData()
    {

    }
}

?>

<?php 
class LoginModel extends CI_Model
{
    public function Login($user, $pass)
    {
        $this->db->where('username', $user);
        $this->db->where('password', $pass);
        $query = $this->db->get('usuarios');
        if ($query->num_rows() == 1)
            return true;
        return false;
    }
}
?>

<?php

class SaveController extends CI_Controller
{
    public function process()
    {

    }
}
?>


// Así llama mi form la función de guardar

 <form class="well form-horizontal" action="<?php echo site_url('SaveController/process');?>" method="POST"  id="contact_form">

solución

Te muestro un ejemplo sencillo de insertar a la BD:

Controlador

public function add(){

$this->load->model('MenuModel');
$this->MenuModel->insertPrueba();
}

Modelo

public function insertPrueba(){

     //Aquí capturas los datos recibidos
        $data = array(

        'id'=>$this->input->post('id'),
        'nombre'=>$this->input->post('nombre'),
        'descripcion'=>$this->input->post('descripcion'),
        'precio'=>$this->input->post('precio'),
        #'imagen'=>$this->input->post('imagen'),
    #   'negocio_id'=>$this->input->post('negocio_id'),
    #   'categoria_id'=>$this->input->post('categoria_id')

         );

        $this->db->insert(TABLE_PRODUCTO,$data);
        redirect('MenusController');

        }

Nota: en esta línea TABLE_PRODUCTO va el nombre de tu tabla, yo lo tengo en el archivo de constantes de esa forma y por eso la tengo en mayúscula.

Vista

En mi caso, el registro lo tengo en un Modal, pero es como un formulario común.

<div class="modal fade" id="basicModal" tabindex="-1" role="dialog" aria-labelledby="basicModal" aria-hidden="true">
                    <div class="modal-dialog">
                        <div class="modal-content">



                      <div class="modal-header">

                            <h4 class="modal-title" id="myModalLabel">Agregar nuevo Pro</h4>
                            </div>
                            <div class="modal-body">
                      <?php echo form_open("MenusController/add"); ?>
                      <div class="form-horizontal" role="form">

                  <div class="form-group has-feedback has-feedback-left">
                    <label  class="col-sm-2 control-label"
                              for="name">Nombre</label>
                    <div class="col-sm-10">
                        <input type="name" class="form-control" 
                        name="nombre" placeholder="Nombre"/>
                        <i class="form-control-feedback glyphicon glyphicon-list-alt"></i>

                    </div>
                  </div>
                  <div class="form-group has-feedback has-feedback-left">
                    <label class="col-sm-2 control-label"
                          for="descripcion" >Descripción</label>
                    <div class="col-sm-10">
                        <input type="name" class="form-control"
                            name="descripcion" placeholder="Descripción"/>
                            <i class="form-control-feedback glyphicon glyphicon-list-alt"></i>

                    </div>
                  </div>
                  <div class="form-group has-feedback has-feedback-left">
                    <label class="col-sm-2 control-label"
                          for="image" >Imagen</label>
                    <div class="col-sm-10">
                        <input type="file" accept="image|*">
                    </div>
                  </div>
                  <div class="form-group has-feedback has-feedback-left">
                    <label class="col-sm-2 control-label"
                          for="name" >Precio</label>
                    <div class="col-sm-10">
                        <input type="password" class="form-control"
                            name="precio" placeholder="Precio"/>
                                 <i class="form-control-feedback glyphicon glyphicon-usd"></i>
                    </div>
                  </div>

          </div>


                            </div>
                            <div class="modal-footer">
                                <button type="button" class="btn btn-default" data-dismiss="modal">Cancelar</button>
                                <button class="btn btn-box-tool" name="submit"> Agregar nuevo</i></button>
                        </div>
                         <?php echo form_close(); ?>

                    </div>
                  </div>




                         </div>

                  </div>
                </div>
Respondido por: Anonymous

Leave a Reply

Your email address will not be published. Required fields are marked *