Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

137
Vistas
Publicación de Codeigniter Ajax: devolver siempre los mismos datos

Soy nuevo en codeigniter y uso javascript, jQuery, Ajax, etc. Justo ahora, estoy tratando de crear una aplicación como un sistema de gestión de visitantes, que generalmente toma un código de barras.

Aquí está mi tabla en la base de datos:

tbl_vin

Aquí está mi modelo:

 public function selectX($tbl, $where) { return $this->db->get_where($tbl, $where); }

Aquí está mi controlador:

 public function check_av_vin(){ $vin = $this->input->post('f1'); $where = array('Vin'=>$vin); $result = $this->crud_m->selectX('tbl_vin', $where); if($result->num_rows() > 0){ echo "1"; }else{ echo "0"; } }

Aquí está mi vista:

 <input class="form-control" type="text" name="f1" id="barcode" autofocus></input>

Aquí está mi JS (en la misma vista):

 $(document).ready(function() { $("#barcode").on('keydown', function(event) { if (event.keyCode == 13) { var bc = $("#barcode").val(); $.ajax({ url: "<?php echo site_url('Lobby/check_av_vin')?>", data: {Vin : bc}, type: 'POST', success: function(data){ if(data == '1'){ alert("VIN Already Exist!"); $("#barcode").val(""); $("#barcode").focus(); } else if(data == '0'){ alert("VIN available!"); $("#barcode").val(""); $("#barcode").focus(); } else{ alert("Error"); $("#barcode").val(""); $("#barcode").focus(); } } }); $("#name").focus(); return false; } });

La pregunta es: lo que sea que esté insertando el código de barras correcto como 'VIN00001' o un código de barras incorrecto o no insertando ningún texto y presionando enter, siempre obtiene datos con la cadena '0' y siempre recibe la alerta 'VIN disponible'. no se donde esta el problema Por favor, ayúdame.

about 4 years ago · Santiago Trujillo
2 Respuestas
Responde la pregunta

0

está enviando datos a través de Ajax, y los datos que está enviando son { Vin : whatever } , por lo que para obtener esto en su función check_av_vin() necesita:
$vin = $this->input->post('Vin'); en lugar de $vin = $this->input->post('f1');

about 4 years ago · Santiago Trujillo Denunciar

0

Tiene un nombre de variable incorrecto en su código.

en la función check_av_vin() que usaste

 $this->input->post('f1');

aunque en forma el nombre de entrada es f1, cuando envía su solicitud ajax pone

 data: {Vin : bc},

simplemente poner lo siguiente resolverá su problema.

 $this->input->post('Vin');
about 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda