Foros del Web » Programando para Internet » PHP »

Actualizar varios campos

Estas en el tema de Actualizar varios campos en el foro de PHP en Foros del Web. Buenas, Hay alguien que tenga algun ejemplo que sirva para actualizar varios campos a la misma ves? He seguido varios tutoriales pero ninguno sirve. Estuve ...
  #1 (permalink)  
Antiguo 30/03/2011, 20:35
Avatar de guidoms7  
Fecha de Ingreso: marzo-2011
Mensajes: 31
Antigüedad: 13 años, 1 mes
Puntos: 0
Actualizar varios campos

Buenas,

Hay alguien que tenga algun ejemplo que sirva para actualizar varios campos a la misma ves? He seguido varios tutoriales pero ninguno sirve.

Estuve intentando varias veces pero al parecer no funciona, hay una seccion de codigo en especial que no funciona.
Código PHP:
 <form id="form1" name="form1" method="POST" action="update.php">
                <table width="640" border="1" cellspacing="0" cellpadding="0">
                  <tr id="contenidohoy">
                    <td width="94">Numero Cliente</td>
                    <td width="228">Nombre</td>
                    <td width="63">Ubicacion</td>
                    <td width="87">Agente</td>
                    <td width="73">Preventa</td>
                    <td width="81">Dia Display</td>
                  </tr>
                  <?php $i 0; do { ?>
                  <tr id="contenidohoycentrado">
                    <td><label for="clientetabla"></label>
                      <input name="clientatabla<?php echo $i;?>" type="text" id="clientatabla<?php echo $i;?>" value="<?php echo $row_select['CLIENTE'];?>" size="10" readonly="readonly" /></td>
                    <td><label for="nombretabla2"></label>
                      <label for="nombretabla"></label>
                      <textarea name="nombretabla<?php echo $i;?>" cols="30" rows="2" readonly="readonly" id="nombretabla<?php echo $i;?>"><?php echo $row_select['NOMBRE'] ; ?></textarea></td>
                    <td><label for="ubicaciontabla"></label>
                      <input name="ubicaciontabla<?php echo $i;?>" type="text" id="ubicaciontabla<?php echo $i;?>" value="<?php echo $row_select['UBICACION']; ?>" size="4" maxlength="3" /></td>
                    <td><label for="agentetabla"></label>
                      <input name="agentetabla<?php echo $i;?>" type="text" id="agentetabla<?php echo $i;?>" value="<?php echo $row_select['AGENTE']; ?>" size="12" maxlength="12" /></td>
                    <td><label for="preventatabla"></label>
                      <input name="preventatabla<?php echo $i;?>" type="text" id="preventatabla<?php echo $i;?>" value="<?php echo $row_select['PREVENTA']; ?>" size="8" maxlength="8" /></td>
                    <td><label for="displaytabla"></label>
                      <input name="displaytabla<?php echo $i;?>" type="text" id="displaytabla<?php echo $i;?>" value="<?php echo $row_select['DISPLAYDIA']; ?>" size="8" maxlength="8" readonly="readonly" /></td>
                  </tr>
                  <?php ++$i; } while ($row_select mysql_fetch_assoc($select)); ?>
                </table>
                <p>
                  <label for="valor"></label>
                  Cantidad de Rutas:
                  <input name="valor" type="text" id="valor" value="<?php echo $i?>" size="2" maxlength="2" readonly="readonly"/>
                </p>
                <p>
                  <input type="submit" name="button" id="button" value="Actualizar" />
                </p>
              </form>
Con eso lo que hago es mostrar el select en una tabla con con campos de texto para que el usuario pueda modificar el texto, este form llama a "update.php"

por el momento update.php solo contiene un bucle para que me muestre el valor de cada posicion por ejemplo

Código PHP:
<?php
$size 
$_POST['valor'];//dice cuantas filas hay

$i 0;
while (
$i $size) {

$ubicacion$_POST['ubicaciontabla'][$i];
echo 
'ubicacion de tabla: '$ubicacion,'<br />';

++
$i;
}

?>
Con esto ($ubicacion= $_POST['ubicaciontabla'][$i];) quiero que me imprima lo que hay en ubicacion tabla en la posicion $i pero no lo esta mostrando, en cambio si pongo ($ubicacion= $_POST['ubicaciontabla2'];) me muestra lo que tiene el campo de texto ubicaciontabla2.

Estoy haciendo algo mal? como puedo hacer para que me imprima el valor de cada campo dependiendo de la posicion $i?

Muchas gracias
__________________
Costa Rica WOW!!
  #2 (permalink)  
Antiguo 30/03/2011, 22:04
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 15 años, 9 meses
Puntos: 1532
Respuesta: Actualizar varios campos

coloca corchetes en los name de los input's, de esa forma php los interpreta como arrays:

<textarea name="nombretabla[<?php echo $i;?>]" ... />

y te llegarán en ese orden, con ése índice, y puedes usar ciclos como foreach

$_POST['nombretabla'][1];
$_POST['nombretabla'][2];
etc.
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #3 (permalink)  
Antiguo 30/03/2011, 23:26
Avatar de arepavieja  
Fecha de Ingreso: marzo-2011
Mensajes: 207
Antigüedad: 13 años, 1 mes
Puntos: 9
Respuesta: Actualizar varios campos

fíjate que en los input estás dando el nombre a los campos como: "campo1, campo2, campo3" pero en el código php veo que los interpretas como campo[1], campo[2]... etc...

intenta modificando esa parte, que sean parecidos.
__________________
La educación y la cortesía abren todas las puertas.

Etiquetas: campos
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 02:46.