PHP - Problema envío parametros por POST de todas las paginaciones

 
Vista:
Imágen de perfil de Pedro
Val: 119
Ha disminuido 1 puesto en PHP (en relación al último mes)
Gráfica de PHP

Problema envío parametros por POST de todas las paginaciones

Publicado por Pedro (43 intervenciones) el 19/03/2020 23:51:10
Hola hoy estoy que no adelanto quizás sea sencillo o no lo sé pero no doy con la solución por el momento.

Problema:
Formulario con inputs dinámicos según resultados de una query.

El Formulario tiene un DataTable con paginación es decir si vienen 100 resultados de la query los distribuye en 10 paginaciones.

Cada input en el name pongo una variable array ejemplo name="cantidad[]";

Cuando realizo el submit sólo envía los datos de la paginación que está visible. Es decir envia un array con los 10 datos de la paginación en vez de enviar el array con los 100 datos por ejemplo.

¿Cómo puedo enviar todos los arrays de todas la paginaciones?

Espero haberme explicado bien.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de raai
Val: 93
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Problema envío parametros por POST de todas las paginaciones

Publicado por raai (79 intervenciones) el 21/03/2020 02:20:06
guardalos en una variable de session
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Pedro
Val: 119
Ha disminuido 1 puesto en PHP (en relación al último mes)
Gráfica de PHP

Problema envío parametros por POST de todas las paginaciones

Publicado por Pedro (43 intervenciones) el 21/03/2020 11:52:45
Lo primerísimo es agradecer tu disposión a ayudar a los demás. Lo segundo sigo avanzando con pequeños pasos y el algoritmo que he encontrado al problema es el siguiente.

El Data Table con input y selects dinámicos es filtrable , es decir si pongo verduras aparece los artículos englobados en categoría verduras y entonces la paginación que me muestra es por ejemplo de 10 resultados.

Si yo en este momento de haber aplicado el filtro hiciera un Submit me enviaría por parámetros en el POST los names de esta paginación filtrada.

SOLUCIÓN EN PROCESO:
1.-Lo que estoy haciendo es crear un evento on keypress Jquery sobre todos los inputs dinámicos que se han formado en el Data Table.

2.Cuando en un Campo se introduce por ejemplo 123 capturo el valor con un jquery y envío una petición POST AJAX a mi propio Guión php.

3.-Meto en un array asociativo los datos de la fila entera, ejemplo :cant_art,id_articulo,id_categoria,descripcion_art,cod_prov,unidad_medida.

4.-Para en envío de los datos a la BD de los datos añadidos al formulario dinámico lo hago con un evento onclick en un button -->que llamará a una función que enviará los datos del array antes mencionado.

Es la única solución que estoy manejando a mi problema, si consideran o tienen una solución más viable estaré encantado de escucharla.

Gracias.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Julio
Val: 2.007
Plata
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Problema envío parametros por POST de todas las paginaciones

Publicado por Julio (830 intervenciones) el 21/03/2020 12:10:47
Hola.

¿Cómo es el filtrado de elementos? Quiero decir, ¿cuando haces ese filtrado de elementos recargas por completo la página?

-----------------------------
Aprende la programación desde una perspectiva básica y simplista en Programación Básica
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Pedro
Val: 119
Ha disminuido 1 puesto en PHP (en relación al último mes)
Gráfica de PHP

Problema envío parametros por POST de todas las paginaciones

Publicado por Pedro (43 intervenciones) el 21/03/2020 12:31:32
Hola @Julio mis bendiciones ante la gran labor que haces en este Foro.

Para que comprendas el problema échale un vistazo a lo que es un Data Table --> Aquí

Eso es un Data Table qué ocurre que yo lo formo dinámicamente con datos de una BD SQL SERVER según el cliente tendrá más o menos resultados==rows.

Te pongo en contexto:

Imagina que en esa Data Table hay categorías Verduras, Fiambres, Lácteos.

Si yo en el input Search coloco Verduras lo que ocurre es que aparecen filas de esa categoría en una paginación de por ejemplo 10 filas para ese filtro de categoría.

Si yo aunque haya rellenado inputs de por ejemplo cantidad a pedir en otras paginaciones si hago Submit sólo me envía los parámetros name de la paginación actual.

Espero habértelo explicado lo mejor posible un abrazo cordial amigo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Julio
Val: 2.007
Plata
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Problema envío parametros por POST de todas las paginaciones

Publicado por Julio (830 intervenciones) el 21/03/2020 12:36:06
Sí, si has explicado lo mismo que antes y eso te había entendido, vamos, creo haberlo entendido. Mi pregunta iba por otro lado.

Lo que te preguntaba es si el filtrado lo haces como en esa página que pones de ejemplo (es decir, vía JavaScript), o tu filtrado lo haces vía formulario y recarga de página por completo.

-----------------------------
Aprende la programación desde una perspectiva básica y simplista en Programación Básica
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Pedro
Val: 119
Ha disminuido 1 puesto en PHP (en relación al último mes)
Gráfica de PHP

Problema envío parametros por POST de todas las paginaciones

Publicado por Pedro (43 intervenciones) el 21/03/2020 12:41:37
Por eso he compartido la página del Data Table para que veas que el filtrado lo hace por javascript.
El Data Table funciona con AJAX realiza el filtro y recarga la Tabla. Es una maravilla por un lado pero por otro es horrible según se mire.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Julio
Val: 2.007
Plata
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Problema envío parametros por POST de todas las paginaciones

Publicado por Julio (830 intervenciones) el 21/03/2020 13:02:58
Vale, entendido. Es decir, tienes la misma estructura.

Se me ocurre que crees el formulario también vía JavaScript. Es decir, aunque haya varias páginas, cuando estés haciendo el filtro vas creando el formulario y tantos <input type="hidden"> como elementos totales (no de la página actual, sino totales) haya, y cuando envíes el formulario se enviarán todos esos inputs con los elementos que se hayan filtrado.

Otra forma que se me ocurre es que, cuando se hace el filtrado, se envían ciertos parámetros para filtrarlos. Cuando envíes el formulario, envía también esos parámetros que hacen el filtrado y, en donde recoges el formulario, primero filtras los elementos con esos parámetros de filtrado y ya tienes todos los elementos que estaban sin pensar en la paginación.

La segunda opción creo que es mejor. No sé si me he explicado bien, jeje.

-----------------------------
Aprende la programación desde una perspectiva básica y simplista en Programación Básica
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Pedro
Val: 119
Ha disminuido 1 puesto en PHP (en relación al último mes)
Gráfica de PHP

Problema envío parametros por POST de todas las paginaciones

Publicado por Pedro (43 intervenciones) el 21/03/2020 13:24:03
No tengo control sobre los filtrados ya que quien gestiona el Data table es el propio plugin.js o como queramos llamarlo.

Lo que se me ha ocurrido es con un keyup eventListenner al insertar datos en cualquier input y capturar los campos de la fila entera del Data Table y meterlos en un array $_SESSION .

Y cuando se haga submit controlar el preventDefault y mandar el array a un php para manejar los datos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Julio
Val: 2.007
Plata
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Problema envío parametros por POST de todas las paginaciones

Publicado por Julio (830 intervenciones) el 21/03/2020 14:12:00
El filtrado lo único que hace es buscar en la tabla por el texto que le pases, ¿no? Entonces lo más fácil es pasar ese texto cuando hagas el submit y hacer en PHP luego el filtrado por el mismo texto para tener los mismos elementos.

-----------------------------
Aprende la programación desde una perspectiva básica y simplista en Programación Básica
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Pedro
Val: 119
Ha disminuido 1 puesto en PHP (en relación al último mes)
Gráfica de PHP

Problema envío parametros por POST de todas las paginaciones

Publicado por Pedro (43 intervenciones) el 21/03/2020 15:08:00
No te has contextualizado todavía y es normal porque es un poco complicado.

Ejemplo simple de submit php un formulario con dos inputs

input atributno name="nombre"
input2 atributo name="password"

Cabecera método POST -> https://localhost?name="Peter"&password="!!"·$!"·$"

Esto de arriba ^ es un envío por POST de 2 campos nada más.

Ahora viene la Tela usando Data Table.

Los inputs son generados dinámicamente por lo tanto podemos tener 200 input's

Data Table reparte en paginaciones esos 200 input's

Entra el usuario y pone en el input Search Lacteos---> se le muestra 20 inputs de lacteos en una paginación y --> añade las cantidades a pedir de cada lácteo.

Ahora viene el problema el usuario quiere fiambre y lo pone en el Search --> se le muestra una paginación con Salchichón y Chorizo Ibérico el usuario pone 1 Salchichón y 12 Chorizos.

Ahora desde ésta paginaciún da click al botón Submit

Vista parámetros método POST https://localhost?salchichon=1&chorizo=12 <----Como puedes ver sólo ha mandado los parámetros de los inputs que estaban en la última paginación y no ha añadido los lácteos.

Espero que ahora me hayas comprendido. Por eso la única solución que he encontrado es meter en variables los datos de cada input en Real-Time y luego una vez finalizado el relleno de todos los campos mandar los datos en $_SESSION.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Julio
Val: 2.007
Plata
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Problema envío parametros por POST de todas las paginaciones

Publicado por Julio (830 intervenciones) el 21/03/2020 15:10:51
Vale, si cada elemento de la tabla filtrada tiene que tener un input donde se envían nuevos datos, sí, se complica bastante el tema. No te queda otra entonces que hacerlo por JavaScript (que imagino que tiene que ser algo caótico) o mantener los inputs guardándolos en la sesión.

-----------------------------
Aprende la programación desde una perspectiva básica y simplista en Programación Básica
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Pedro
Val: 119
Ha disminuido 1 puesto en PHP (en relación al último mes)
Gráfica de PHP

Problema envío parametros por POST de todas las paginaciones

Publicado por Pedro (43 intervenciones) el 21/03/2020 17:54:59
Exacto -->Vale, si cada elemento de la tabla filtrada tiene que tener un input donde se envían nuevos datos,

Mira te explico por ejemplo una fila de la tabla

1input --Cantidad------1label---descripción-----1select--unidades de medida----1input --Inventario-------Proveedor

--------0---------------------- caja iogures ---------------pack-12--1/ud----12/ud---------------0.00----------------------FRUTERIA LÓPEZ,SL-----

Imagina esto es sólo un producto de 281 productos o más que me retorna el query de la BD.

Los inputs y los select son libres de cambiar por el usuario, imagina la complejidad de enviar los datos de este formulario con filas dinámicas.

Qué ocurre si quito el input Search y la paginación...? porque puedo hacerlo, entonces me muestra un formulario vertical de 281 artículos.

Te imaginas buscar un producto del que quieres hacer pedido en 281 productos verticales y desde un smart phone...?

Esa es la complejidad que me da el search input que puedo localizar cualquier artículo pero si hago el submit sólo me envía los parámetros del filtro presente oséa de la paginación que está visible y no el resto de los 281 productos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar