Foros del Web » Programando para Internet » PHP » CodeIgniter »

[SOLUCIONADO] Ingresar datos a BD con Javascript

Estas en el tema de Ingresar datos a BD con Javascript en el foro de CodeIgniter en Foros del Web. Buenas amigos, necesito una ayuda, con el ingreso de los datos en una tabla de Mysql, mis archivos son los siguientes: El controlador: ingresarcaso.php @import ...
  #1 (permalink)  
Antiguo 07/07/2014, 17:38
 
Fecha de Ingreso: abril-2014
Mensajes: 14
Antigüedad: 10 años
Puntos: 0
Exclamación Ingresar datos a BD con Javascript

Buenas amigos, necesito una ayuda, con el ingreso de los datos en una tabla de Mysql, mis archivos son los siguientes:

El controlador: ingresarcaso.php
Código PHP:
Ver original
  1. <?php
  2.  
  3. class Ingresarcaso extends CI_Controller {
  4.  
  5.     public function __construct() {
  6.         parent::__construct();
  7.         $this->load->model('Ingresarcaso_model');
  8.         $this->load->helper(array('url'));
  9.         if (!$this->session->userdata('UsuarioJEL') && $this->uri->segment(2) !== 'login' && $this->uri->segment(2) !== 'verificar') {
  10.             redirect('/admin/login');
  11.         }
  12.     }
  13.  
  14.     function index() {
  15.         $data["titulo"] = "Casos";
  16.         $data["categoria"] = "Ingresar Caso";
  17.         $data['dymanic_content'] = 'ingresarcaso';
  18.         //$data['lista_plataforma'] = $this->Ingresarcaso_model->get_plataforma();
  19.         $plataforma           = $this->Ingresarcaso_model->lista_plataforma();
  20.         $estatus              = $this->Ingresarcaso_model->lista_estatus();
  21.  
  22.         $data['plataforma'] = '<option value="">SELECCIONA</option>';
  23.         foreach ($plataforma as $item):
  24.             $data['plataforma'] .= '<option value="' . $item->id_plataforma . '">' . $item->plataforma . '</option>';
  25.         endforeach;
  26.         $data['estatus'] = '<option value="">SELECCIONA</option>';
  27.         foreach ($estatus as $item):
  28.             $data['estatus'] .= '<option value="' . $item->id_estatus . '">' . $item->estatus . '</option>';
  29.         endforeach;
  30.        
  31.                
  32.         $this->load->view('template/index', $data);
  33.  
  34.  
  35.     }
  36.  
  37.     function registrarcaso() {
  38.         $data = array(
  39.             'id_estatus'       => $this->input->post('estatus'),
  40.             'id_plataforma'    => $this->input->post('plataforma'),            
  41.             'nroticket'        => $this->input->post('nroticket'),
  42.             'usuario'          => $this->input->post('usuario'),
  43.             'correo'           => $this->input->post('correo'),
  44.             'fechainicial'     => $this->input->post('fechainicial'),
  45.             'caso'             => (trim($this->input->post('caso')))
  46.             );
  47.         $this->Ingresarcaso_model->registrar_caso($data);
  48.     }

El modelo: ingresarcaso_model.php

Código PHP:
Ver original
  1. <?php
  2.  
  3. class Ingresarcaso_model extends CI_Model {
  4.     public function __construct() {
  5.         parent::__construct();
  6.     }
  7.    
  8.     function lista_plataforma() {
  9.         $query = $this->db->get('plataforma');
  10.         return $query->result();
  11.     }
  12.    
  13.     function registrar_caso($data){
  14.        $query = $this->db->insert('caso',$data);
  15.        $query->result();
  16.     }
  17.  
  18.     function lista_estatus() {
  19.         $query = $this->db->get('estatus');
  20.         return $query->result();
  21.     }
  22. }

La vista: ingresarcaso.php

Código PHP:
Ver original
  1. <div class="alert"></div>
  2. <script>
  3.     </script>
  4. <div id="portlets">
  5. <script src="<?php echo base_url(); ?>assets/js/highcharts.js"></script>
  6. <script src="<?php echo base_url(); ?>assets/js/modules/exporting.js"></script>
  7.     <script>
  8.         $(document).ready(function() {
  9.             // call the tablesorter plugin
  10.             $("table").tablesorter({
  11.                 debug: true
  12.             });
  13.         });
  14.  
  15.     </script>
  16.  
  17.     <div id="PreguntaTabs">  
  18.         <ul>
  19.             <li><a href="#tabs-1"><b>Ingresar Caso</b></a></li>
  20.            
  21.         </ul>
  22.  
  23.  
  24.         <div>
  25.             <div>  <div id="tabs-1">
  26.                     <form name="registrar_caso" id="registrar_caso" method="post">
  27.                         <table width="1000" border="0">
  28.                             <tr>
  29.                                 <td>Plataforma:
  30.                                     <select name="plataforma" id="plataforma">
  31.                                         <?php echo $plataforma; ?>
  32.                                     </select>
  33.                                 </td>
  34.                             </tr>
  35.                             <tr>
  36.                                 <td>Estatus:
  37.                                      <select name="esta
  38.                                      tus" id="estatus">
  39.                                         <?php echo $estatus; ?>
  40.                                      </select>
  41.                                 </td>
  42.                                 <td>Usuario:
  43.                                      <input name="usuario" id="usuario" type="text">
  44.                                 </td>
  45.                                 <td>
  46.                                        <span>Fecha Inicial: </span>
  47.                                             <input name="fechainicial" type="text" id="fechainicial" class="datepicker" />
  48.                                    
  49.                                 </td>
  50.                             </tr>
  51.  
  52.                             <tr>
  53.                                 <td>Ticket #:
  54.                                      <input name="nroticket" id="nroticket" type="text" size="15">
  55.                                 </td>
  56.                                 <td>Correo:
  57.                                      <input name="correo" id="correo" type="text">
  58.                                 </td>
  59.                                
  60.                             </tr>
  61.                         </table>
  62.                         <br>
  63.                         <table width="1000" border="0">
  64.                             <tr>
  65.                                 <td>Caso: <br>
  66.                                     <textarea class="casoarea" id="caso" name="caso" cols="102" rows="10">
  67.                                     </textarea>
  68.                                 </td>
  69.                             </tr>
  70.                         </table>
  71.                         <br>
  72.                         <center><input id="registro_caso" name="registro_caso" type="button" value="Registrar">  </center>
  73.                     </form>
  74.                        <div class="error"></div>
  75.                 </div>
  76.             </div>
  77.              
  78.         </div>
  79.     </div>
  80.  
  81. </div>
  82. <div class="clear"></div>

La funcion JS: funciones.js

Código Javascript:
Ver original
  1. $('#registro_caso').click(function() {
  2.         var plataforma      = $('#plataforma').val();
  3.         var estatus         = $('#estatus').val();
  4.         var nroticket       = $('#nroticket').val();
  5.         var usuario         = $('#usuario').val();
  6.         var correo          = $('#correo').val();
  7.         var fechainicial    = $('#fechainicial').val();
  8.         //var caso            = $('#caso').val();
  9.         $validar_fecha      = $("#fechainicial").val().trim();
  10.         if (plataforma === "") {
  11.             $(".error").css("display", "inline");
  12.             $('.error').text("Seleccione Plataforma.");
  13.             $("#plataforma").select();
  14.         }
  15.         else if (estatus === "") {
  16.             $(".error").css("display", "inline");
  17.             $('.error').text("Seleccione Estatus.");
  18.             return false;
  19.         }
  20.         else if (nroticket === "") {
  21.             $(".error").css("display", "inline");
  22.             $('.error').text("Ingrese Nro de Ticket.");
  23.             return false;
  24.         }
  25.         else if (usuario === "") {
  26.             $(".error").css("display", "inline");
  27.             $('.error').text("Ingrese Nombre de Usuario.");
  28.             return false;
  29.         }
  30.         else if (correo === "") {
  31.             $(".error").css("display", "inline");
  32.             $('.error').text("Ingrese Correo.");
  33.             return false;
  34.         }
  35.         else if (fechainicial === "") {
  36.             $(".error").css("display", "inline");
  37.             $('.error').text("Ingrese la Fecha del Caso.");
  38.             return false;
  39.         }
  40.         else if (caso === "") {
  41.             $(".error").css("display", "inline");
  42.             $('.error').text("Ingrese la descripcion del Caso.");
  43.             return false;
  44.         }
  45.         else {
  46.             $.ajax({
  47.                 url: 'ingresarcaso/registrarcaso',
  48.                 type: 'post',
  49.                 data: {plataforma: plataforma, estatus: estatus, nroticket: nroticket, usuario: usuario, correo: correo, fechainicial: fechainicial},
  50.                 success: function(texto) {
  51.  
  52.                     if (texto) {
  53.                         console.log(texto);
  54.                     }
  55.                     else {
  56.                         alert('CASO AGREGADO SASTIFACTORIAMENTE');
  57.                         window.location = 'ingresarcaso/index';
  58.                     }
  59.                 }
  60.             });
  61.         }
  62.        
  63.     });

La validacion me la hace correctamente, pero luego no hace nada, deria salirme el alert de que se agrego satisfactoriamente el caso y guardarlo en la base de dato, pero no hace nada..

Espero me puedan ayudar..
  #2 (permalink)  
Antiguo 07/07/2014, 18:09
Avatar de abimex
Colaborador
 
Fecha de Ingreso: marzo-2007
Ubicación: ~
Mensajes: 751
Antigüedad: 17 años, 1 mes
Puntos: 137
Respuesta: Ingresar datos a BD con Javascript

¿Y está haciendo la inserción?

¿Se está haciendo bien la petición?

¿Te da alguna respuesta el servidor?
__________________
>> abimaelmartell.com
  #3 (permalink)  
Antiguo 07/07/2014, 20:05
 
Fecha de Ingreso: abril-2014
Mensajes: 14
Antigüedad: 10 años
Puntos: 0
Respuesta: Ingresar datos a BD con Javascript

Gracias por tu respuesta amigo, cuando le doy al boton no hace absolutamente nada, no me muestra nada, lo unico que me muestra es cuando dejo un campo vacio que me dice que debo llenarlo.. Pero a la hora de hace la insercion en la base de dato no hace nada, simnplemente se queda como esta..
  #4 (permalink)  
Antiguo 08/07/2014, 11:33
Avatar de abimex
Colaborador
 
Fecha de Ingreso: marzo-2007
Ubicación: ~
Mensajes: 751
Antigüedad: 17 años, 1 mes
Puntos: 137
Respuesta: Ingresar datos a BD con Javascript

El navegador no muestra nada, pero revisa la consola de errores del navegador, tambien revisa la respuesta de tu peticion.

¿Qué navegador usas?
__________________
>> abimaelmartell.com
  #5 (permalink)  
Antiguo 28/09/2014, 22:37
 
Fecha de Ingreso: septiembre-2009
Ubicación: México
Mensajes: 102
Antigüedad: 14 años, 7 meses
Puntos: 4
Respuesta: Ingresar datos a BD con Javascript

Asegúrate que el controlador de la acciones del insert funcione probando directo la ruta, es decir tu url http://trl/controlador/parámetros y si tu controles funciona entonces prueba cambiando la url del ajax debe de ir completa es decir en tu AJAX debe de quedar algo así

url: <?php echo base_url() ?>'ingresarcaso/registrarcaso',

Etiquetas: bd, javascript
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:00.