En muchos de nuestros desarrollos tenemos que añadir tablas con información detallada o formularios donde debemos rellenar información en tablas para luego ser guardadas en la base de datos.
Lo primero que tenemos que hacer en nuestro código html, es añadir un ID=”” a la tabla que queremos leer los datos
<table class="table" id="table_cat"> ......
Tambien es importante añadir un id= a cada textbox para poder diferenciar cada uno, se recomienda añadir en el id el valor del campo de la base de datos que queremos que guarde, en el ejemplo, vamos a añadir un aumento de precio en una tabla donde el identificador o clave primaria es el id del textbox
- id = el id de la categoría de la bd, recordad añadir un “tex_”+id para no repetir id con otros formularios o tablas
- nombre = el nombre de la categoria de la bd
- value = el valor de incremento de la bd
<th><input type="text" name="{$cat.name}" id="cat_{$cat.id_category}" value="{$cat.aumento}" class="fixed-width-xs"></th>
Ahora en el código java añadiremos
$("#submit_cat").on('click',function(event){ $('#table_cat tr input').each(function() { id = this.id.replace("cat_", ""); incrase = this.value; savedata(id,incrase); }); });
Ya tenemos el código que lee los datos de la tabla y llama a una función que guarda los datos, en este caso es una llamada ajax
function saveincrase(id,incrase){ $.ajax({ type: 'POST', data : "{}", url:'/savedata.php?id='+id+'&incrase='+incrase, dataType: "json", success : function(response) { }, complete : function(){ location.reload(); } }); }
Ya tenemos la orden ajax que llama a un fichero php para guardar los datos en la base de datos.
En este fichero añadiremos el codigo necesario para guardar los datos en la bd
<?php $id = $_GET["id"]; $incrase = $_GET["incrase"]; //aqui todo el codigo necesario para conectar con la bd teniendo los datos ya podemos añadir la orden sql para guardar los datos, comprobando antes si existe el dato y actualizando o añadiendo $sql ="update carrefour_ecom_cat_aumento set aumento = ".$incrase." where id_category = ".$id."";