Ver Mensaje Individual
  #1 (permalink)  
Antiguo 28/09/2013, 21:36
Avatar de AnGuisi
AnGuisi
 
Fecha de Ingreso: julio-2013
Ubicación: San Felipe - Yaracuy
Mensajes: 122
Antigüedad: 11 años, 7 meses
Puntos: 2
Modificación en PHP

Me estoy complicando un poco a la hora de modificar uno de los registros.
Al momento de realizar una modificación primero esta la consulta de lo que se desea modificar. Tengo una tabla llamada caracteristicas_hardware con el siguiente diseño.
Código MySQL:
Ver original
  1. `caracteristicas_hardware` (
  2.  
  3.   `observaciones_h` varchar(45) default NULL,
  4.   `tipo_nombre` varchar(45) default NULL,
  5.   `serial` varchar(45) default NULL,
  6.   `id_hardware` varchar(20) default NULL,
  7.  
  8.   KEY `id_hardware` (`id_hardware`)
  9.   )

La cual esta relacionada como pueden ver con la tabla que contiene el atributo o campo "id_hardware" la cual es la siguiente:

Código MySQL:
Ver original
  1. `hardware` (
  2.   `id_hardware` int(20) NOT NULL,
  3.   `tipo_h` varchar(45) default NULL,
  4.   PRIMARY KEY  (`id_hardware`)

La tabla hardware contiene todos los posibles componentes que abarca el hardware asi como: Disco Duro, Memoria Ram, Procesador etc.

La tabla caracteristicas_hardware como pueden observar almacena todas las caracteristicas de dicho hardware cada observacion, serial, etc tiene un id_hardware el cual ayuda a reconocer a que componente exactamente pertenece ese registro.

Sabiendo esto he realizado una consulta plasmando los resultados de la siguiente forma:

Código PHP:
Ver original
  1. <?
  2.       $i = 0;
  3. foreach ($row as $datos) {
  4.        ?>
  5.        
  6.  
  7.       <tr>
  8.      <td><input type="text" id="tipo" name="tipo<? echo $i; ?>" value="<? echo $datos['tipo_h']; ?>" disabled="disabled" />
  9.      
  10.         </td>
  11.        
  12.        
  13.        
  14.         <td><input type="text" class="form" name="serial<? echo $i; ?>" value="<? echo $datos['serial']; ?>" disabled="disabled" /></td>
  15.         <td><input type="text" class="form" name="observaciones_h<? echo $i; ?>" value="<? echo $datos['observaciones_h']; ?>" disabled="disabled" /></td>
  16.        
  17.    </tr>
  18.    
  19.      
  20.  
  21.       <?
  22.       $i++;
  23.        }
  24.        ?>

Puesto a que la tabla contenedora de todo es caracteristicas_hardware solo cuenta con los campos observados se realiza un ciclo que se cumple hasta que no existan mas id_hardware que buscar.

El problema esta en que a la hora de modificar solo modifica el ultimo registro, le he agregado el contador $i para distinguir un registro de otro pero puede existir el caso de que existan 2 o mas tipo_h por lo cual habran 2 o mas observaciones, seriales . Quiero poder relacionar los tipo_h con los seriales y observaciones a la hora de modificar.