Pass fix by ajax jquery to PHP post

1

I have the following arrangement that I want to send by ajax jquery by post to php codeigniter

  

var array = [];

(2) [Object, Object]
0
:
Object
Codigo
:
"11111"
Descripción
:
"caja"
Eliminar
:
" Eliminar"
Precio
:
"$46"
__proto__
:
Object
1
:
Object
Codigo
:
"22222"
Descripción
:
"lapiz"
Eliminar
:
" Eliminar"
Precio
:
"$222"
__proto__
:
Object
length
:


    $.ajax({
          type: "POST",
          url: "<?php print base_url();?>controlador/Guardar",
          data: array,//no se como mandar la data a php            
          success: function(objView){
          alert("volvio");
        }
});

what form would I have to receive it in php codeigniter?

I tried this code but it returns an array null thank you very much

public function Guardar(){


        $data = json_decode(stripslashes($_POST['array']));
        echo var_dump($data);

    }
    
asked by Javier Antonio Aguayo Aguilar 10.05.2017 в 20:47
source

2 answers

4
  

This is the correct way to send an array by ajax

var array = [1,2,3,4]; //array que deseo enviar

$.ajax({
          type: "POST",
          url: ...,
          data: {'array': JSON.stringify(array)},//capturo array     
          success: function(data){

        }
});
  

This way you get on the backend by php

$data = json_decode($_POST['array']);
var_dump($data);
    
answered by 11.05.2017 / 15:20
source
-1

This is my example

[html]
<form>
        <table>
            <tr>
                <td>
                    <input type="checkbox" class="estatusInput" name="estatusCandidato" value="entrevista_rrhh">
                    <label><span><span></span></span>Entrevista RRHH</label>
                </td>
                <td>
                    <input type="checkbox" class="estatusInput" name="estatusCandidato" value="examen_ortografia">
                    <label><span><span></span></span>Examen de ortografía</label>
                </td>
            </tr>
            <tr>
                <td>
                    <input type="checkbox" class="estatusInput" name="estatusCandidato" value="entrevista_area">
                    <label><span><span></span></span>Entrevista área</label>
                </td>
                <td>
                    <input type="checkbox" class="estatusInput" name="estatusCandidato" value="evaluaciones_tecnicas">
                    <label><span><span></span></span>Evaluaciones técnicas</label>
                </td>
            </tr>
            <tr>
                <td>
                    <input type="checkbox" class="estatusInput" name="estatusCandidato" value="entrevista_coach">
                    <label><span><span></span></span>Entrevista Coach</label>
                </td>
                <td>
                    <input type="checkbox" class="estatusInput" name="estatusCandidato" value="evaluacion_de_idioma">
                    <label><span><span></span></span>Evaluación de idioma</label>
                </td>
            </tr>
            <tr>
                <td>
                    <input type="checkbox" class="estatusInput" name="estatusCandidato" value="evaluatest">
                    <label><span><span></span></span>Evaluatest</label>
                </td>
                <td>
                    <input type="checkbox" class="estatusInput" name="estatusCandidato" value="en_proceso_de_oferta">
                    <label><span><span></span></span>En proceso de Oferta</label>
                </td>
            </tr>
            <tr>
                <td>
                    <input type="checkbox" class="estatusInput" name="estatusCandidato" value="solicitud_de_empleo">
                    <label><span><span></span></span>Solicitud de empleo</label>
                </td>
                <td>
                    <input type="checkbox" class="estatusInput" name="estatusCandidato" value="lista_de_documentos">
                    <label><span><span></span></span>Lista de documentos</label>
                </td>
            </tr>
        </table>
    <div class="right">
        <a href="" class="button" id="estatusCandidatoSubmit">Actualizar estatus</a>
    </div>
    </form>


[jquery]
$('#estatusCandidatoSubmit').click(function(event) {
event.preventDefault();
var datos = {};
var campo ='';

$('.estatusInput').each(function(index){
  campo = $(this).val();
  if ($(this).is(':checked')) {
    datos[campo] = 1;
  }
  else{
    datos[campo] = 0;
  }
});
var datosArray = datos;
datosArray = {'datos': datosArray};
var data = $.param(datosArray);
console.log(data);

$.ajax({
  url: 'estatus.php',
  type: 'post',
  dataType: 'json',
  data: data,
  success: function(data) {
      alert('success');
  },
  error: function(data) {
    alert('error');
  }
 });
});
    
answered by 13.01.2018 в 11:58