Ver Mensaje Individual
  #3 (permalink)  
Antiguo 15/10/2014, 13:00
Avatar de Alexis88
Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.552
Antigüedad: 13 años
Puntos: 977
Respuesta: pasar arreglo con jquery para insertar en base de datos

El envío de los datos debes de hacerlo de esta manera:

Código Javascript:
Ver original
  1. data: {
  2.     array: codigos
  3. }

Y los recibes así:

Código PHP:
Ver original
  1. $codigos = $_POST['array'];
  2. $total = count($codigos);
  3. for ($i = 0; $i < $total; $i++){
  4.     //El resto de instrucciones
  5. }

Por otro lado, noto inconsistencia en tu consulta SQL, es decir, ¿intentas insertar datos desde otra tabla? Si fuera así, lo estás haciendo de la manera incorrecta, además, si estás enviando un array, no puedes hacer la comparación (WHERE) como si se tratara de un dato simple. El bucle for está mal formado. El contador debe llegar a ser menor que el total de elementos del array para poder continuar, no mayor o igual al array (otra inconsistencia pues no puedes comparar a un entero con un array).

Por último, realizar inserciones a la BD mediante un bucle, es bastante ineficiente, sería mejor que veas la forma de crear grupos de datos para insertarlos todos a la vez. Por ejemplo, esto insertaría tres grupos de datos en una sola consulta:

Código MySQL:
Ver original
  1. INSERT INTO tabla (campo1, campo2, campo3)
  2. VALUES ('valor1', 'valor2', 'valor3'), ('valor4', 'valor5', 'valor6'), ('valor7', 'valor8', 'valor9')
  3. WHERE campoClave = 'valorClave'

Saludos
__________________
«Juro por mi vida y mi amor por ella, que jamás viviré para el provecho de otro hombre, ni le pediré a otro hombre que viva para el mío».

Ayn Rand