Foros del Web » Programando para Internet » PHP »

Leer Dato Tabla PHP, HTML y MySQL

Estas en el tema de Leer Dato Tabla PHP, HTML y MySQL en el foro de PHP en Foros del Web. Hola, Escribo en el foro para ver si alguién me puede echar una mano con mi formulario, les cuento. Lo que quiero hacer una tabla ...
  #1 (permalink)  
Antiguo 28/09/2010, 06:09
 
Fecha de Ingreso: septiembre-2010
Mensajes: 9
Antigüedad: 11 años, 2 meses
Puntos: 0
Leer Dato Tabla PHP, HTML y MySQL

Hola,

Escribo en el foro para ver si alguién me puede echar una mano con mi formulario, les cuento.

Lo que quiero hacer una tabla con 4 campos, producto, existencia actual, existencia real y diferencia. El primero me da un listado de productos que obtengo de mi BD, el segundo me da la cantidad total de cada producto (estos dos los me los muestra bien de la base de datos).

Ahora lo que quiero hacer es lo siguiente: que el campo 3 pueda introducir una cantidad(leerla) y que en el campo 4 me de la diferencia(de los campos 2 y 3) de manera automática (que este campo sea readonly), pero la verdad es que estoy un poco en stand by de como hacerlo.

Esto es lo que tengo hecho para mi tabla


<table class="historial">
<thead><tr><th style="width: 250px;">Producto</th><th>Existencia Actual</th><th>Existencia Real</th><th>Diferencia</th></tr>
</thead>
<tbody>

// aqui tengo instrucciones para la base de datos
//para leer las dos primeras columnas

//campo 1 que me da todos los productos
<td> <?php echo $string;?></td>
//campo 2 muestra el total de stock para cada producto
<td><?php echo $total;?></td>

//esto es lo que no se muy bien como hacer
// este es el campo que quiero introducir
<td>
<input
style="width:75px; text-align: right;"
value=""
type="text"
name=""
onchange = "">
</td>
//este campo debería salir automático la diferencia entre lo introducido el campo 3 //y lo que hay en el dos que procede de una tabla que tengo en la BD
<td>
<input
style="width:75px; text-align: right;"
type="text" readonly="readonly"
value=""
name="">
</td>


No sé si me explicado bien. Cualquier ayuda se agradece. Saludos
  #2 (permalink)  
Antiguo 28/09/2010, 06:14
 
Fecha de Ingreso: septiembre-2010
Mensajes: 9
Antigüedad: 11 años, 2 meses
Puntos: 0
Respuesta: Leer Dato Tabla PHP, HTML y MySQL

bueno buscando por aquí he encontrado esto, es algo parecido, pero yo tengo que buscar el 2 campo en mi BD.

http://www.spreeuwenburg.com/newsgroup.html
  #3 (permalink)  
Antiguo 28/09/2010, 07:06
Avatar de OsSk4R  
Fecha de Ingreso: octubre-2006
Ubicación: $this->home
Mensajes: 824
Antigüedad: 15 años, 1 mes
Puntos: 74
Respuesta: Leer Dato Tabla PHP, HTML y MySQL

A ver si esto te vale.

Supongamos que tenemos dos productos en la base de datos.

Producto 1: El campo existencia_actual tiene 4 y existencia_real tiene 5
Producto 2: El campo existencia_actual tiene 5 y existencia_real tiene 10

Ahora, queremos saber la diferencia del producto 1 por ejemplo, pues hariamos lo siguiente:

Código PHP:
Ver original
  1. $sql = "SELECT * FROM tabla WHERE id='1'";
  2.         $result = mysql_query($sql) or die (mysql_error());
  3.         while($mostrar = mysql_fetch_array($result)) {
  4.         $existencia_actual = $mostrar['existencia_actual'];
  5.         $existencia_real = $mostrar['existencia_real'];
  6.         echo $diferencia =  $existencia_real - $existencia_actual;
  7.         }

Y nos mostraría la diferencia. En este caso, para el producto 1, la diferencia sería 1.

Ahí tienes la diferencia hecha, ahora bien, si quieres guardar esa diferencia en el campo correspondiente, bastaría con que hicieras un update...

Saludos,
  #4 (permalink)  
Antiguo 29/09/2010, 02:23
 
Fecha de Ingreso: septiembre-2010
Mensajes: 9
Antigüedad: 11 años, 2 meses
Puntos: 0
Respuesta: Leer Dato Tabla PHP, HTML y MySQL

Hola Deffer, gracias por contestar.

Es correcto lo que dices, pero mi principal problema es leer el dato que introducen en la tabla como leerlo. Te cuento. Producto y Existencia Actual me los da la BD, pero existencia real lo tienen que introducir desde la tabla en HTML. Como Leo ese dato y se lo resto a existencia actual y que automaticamente me lo ponga en diferencia. Te pongo el codigo de lo que tengo. Pero me imagino que tendré que usar una función en javascritp o algo aparte, pero no se como hacerlo de momento, pero sigo en ello. De momento no quiero actualizar nada de la BD, eso ya lo haré luego cuando primero logre hacer esto

Código PHP:
Ver original
  1. <table class="historial">
  2.   <thead><tr><th style="width: 250px;">Producto</th><th>Existencia Actual</th><th>Existencia Real</th><th>Diferencia</th></tr>
  3.   </thead>
  4.   <tbody>
  5. <?php
  6.  
  7. while ($fila = mysql_fetch_row($resultado)){
  8.   $string = $fila[1];
  9.  
  10.   if ($fila[5]!=0){
  11.     $consulta1 = "SELECT nombre FROM color WHERE idcolor =".$fila[5];
  12.     $resultado1 = mysql_query ($consulta1, $link);
  13.     $fila1 = mysql_fetch_row($resultado1);
  14.     $string = $string." - ".$fila1[0];
  15.   }
  16.  
  17.   if ($fila[3]!=0){
  18.     $consulta1 = "SELECT nombre FROM idioma WHERE ididioma =".$fila[3];
  19.     $resultado1 = mysql_query ($consulta1, $link);
  20.     $fila1 = mysql_fetch_row($resultado1);
  21.     $string = $string." - Idioma ".$fila1[0];
  22.   }
  23.  
  24.   if ($fila[4]!=0){
  25.     $consulta1 = "SELECT nombre FROM talla WHERE idtalla =".$fila[4];
  26.     $resultado1 = mysql_query ($consulta1, $link);
  27.     $fila1 = mysql_fetch_row($resultado1);
  28.     $string = $string." - Talla ".$fila1[0];
  29.   }
  30.  
  31. $consulta1 = "SELECT * FROM inventario WHERE idproducto=".$fila[0];
  32. $resultado1 = mysql_query($consulta1, $link);
  33. $fila1 = mysql_fetch_row($resultado1);
  34.  
  35. $tui = $fila1[3];
  36. if ($tui==''){$tui = 0;}
  37. $tue = $fila1[4];
  38. if ($tue==''){$tue = 0;}
  39. $tus = $fila1[5];
  40. if ($tus==''){$tus = 0;}
  41. $total = $tui + $tue - $tus;
  42.   ?>
  43.   <td> <?php echo $string;?></td>
  44.   <td><?php echo $total;?></td>
  45.  
  46.      <td>
  47.         <input  
  48.             style="width:75px; text-align: right;"
  49.             value=""
  50.             type="text"  
  51.             name=""
  52.             onchange = "">
  53.     </td>
  54.       <td>
  55.         <input  
  56.             style="width:75px; text-align: right;"
  57.             type="text" readonly="readonly"
  58.             value=""
  59.             name="">
  60.       </td>
  61.   <?php
  62.   printf("</tr>");
  63. }
  64. printf("</tbody></table>");
  #5 (permalink)  
Antiguo 29/09/2010, 03:01
Avatar de OsSk4R  
Fecha de Ingreso: octubre-2006
Ubicación: $this->home
Mensajes: 824
Antigüedad: 15 años, 1 mes
Puntos: 74
Respuesta: Leer Dato Tabla PHP, HTML y MySQL

Pues básicamente es como de comente...

Ese dato lo lees como lees los demás...
O sea, una vez el usuario ha introducido la existencia real y la has guardado, tu haces tu consulta, muestras el producto, existencia actual y existencia real, ¿no?.

Luego hacer la resta como puse en el anterior mensaje y finalmente una vez sacada esa resta, para guardar esa diferencia bastaría, como te comente, en hacer un update.

Mira, basandome en el ejemplo de antes:

Primero hacemos la consulta ...
Código PHP:
Ver original
  1. $sql = "SELECT * FROM tabla_de_productos WHERE id='1'";
  2.         $result = mysql_query($sql) or die (mysql_error());
  3.         while($mostrar = mysql_fetch_array($result)) {
  4.         $existencia_actual = $mostrar['existencia_actual'];
  5.         $existencia_real = $mostrar['existencia_real'];
  6.         echo $diferencia =  $existencia_real - $existencia_actual;
  7.         }

Y ahora el update para guardar la diferencia...
Código PHP:
Ver original
  1. $insertar="UPDATE tabla_de_productos SET diferencia = $diferencia WHERE id='1'";
  2.  $result3=mysql_query($insertar,$conexion) or die (mysql_error());

Saludos,

PD: No tienes porque utilizar nada de javascript ni nada de eso...
  #6 (permalink)  
Antiguo 30/09/2010, 04:42
 
Fecha de Ingreso: septiembre-2010
Mensajes: 9
Antigüedad: 11 años, 2 meses
Puntos: 0
Respuesta: Leer Dato Tabla PHP, HTML y MySQL

Gracias Deffer, sigo en ello, lo que me dices me sirve.

Pero lo que quiero hacer es rellenar la tabla al completo y despues darle al boton grabar y que me guarde todo en la tabla. Sigo probando, me imagino que me saldrán dudas y te iré contando, si quieres ver la aplicación te dejo verla, jeje, aunque ahora mismo esté estancado. Saludos

Etiquetas: dato, html, mysql, tablas
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 22:32.