Ver Mensaje Individual
  #3 (permalink)  
Antiguo 12/01/2008, 15:25
usermax
(Desactivado)
 
Fecha de Ingreso: diciembre-2006
Mensajes: 529
Antigüedad: 18 años, 3 meses
Puntos: 11
De acuerdo Re: Como arrojar un valor de una varible de php dentro de un POST

Si he logrado interpretar bien tu consulta la solución es esta:

En vez de llamar a tus campos de texto de esta manera:


Código PHP:
"descripcion<?echo "$i";?>"
Los debes llamar así (un pequeño cambio):

Código PHP:
"descripcion[<?= $i ?>]"
De esta forma estarías enviando un array a tu servidor y ya es mucho más facil.

Te quedaría así:

Código PHP:
<?
for($i=1$i<=$no_pro$i++){?>

<p align="left">Cantidad
<input type="text" name="cantidad[<?= $i ?>]" size="5"> 
Descripci&oacute;n
<input type="text" name="descripcion[<?= $i ?>]" size="40">

Unidad:
<select name="unidad[<?= $i ?>]" >
<option>Seleccionar</option>
<option value="pieza">Pieza</option>
<option value="caja">Caja </option>
</select>
</p>
<?}?>
Entonces cuando envíes el formulario, tu próxima página recibiría 3 arrays con sus respectivos valores.

El array $_POST['cantidad'], $_POST['descripcion'] y $_POST['unidad'].

Luego, al recibirlos puedes contar algunos de los tres (ya que tienen cantidades de datos equivalentes) y luego recorres con un "for". Algo así:

Código PHP:
$totalcount($_POST['cantidad']); // Aquí te tira la cantidad 
 
//Se reciben las variables del formulario requisición
$observaciones=$_POST['observaciones'];
$area_afectada=$_POST['area_afectada'];
 
 
// Luego... el for
 
for ($i=0$i $total$i++) {
 
 
$descripcion=mysql_real_escape_string($_POST['descripcion'][$i]);
$cantidad= (int) $_POST['cantidad'][$i];
$unidad= (int) $_POST['unidad'][$i]; 
$comentario_req="";
 
 
//Insertamos los datos correspondientes a la requesición.
$query "INSERT INTO requisicion(no_usuarioC,id_mod,descripcion,cantida d,unidad,observaciones,comentario_req,area_afectad a,fecha_req,fecha_req_acp,fecha_reqlib)
VALUES('$no_usuarioC','$id_mod','$descripcion','$c antidad','$unidad','$observaciones','$comentario_r eq','$area_afectada','$fecha_req','$fecha_req_acp' ,'$fecha_reqlib')"
;
mysql_query($query) or die(mysql_error());
 
 


Espero haber entendido la duda y que te sirva mi idea.
Por ultimo... verás que usé la función mysql_real_escape_string y (int) para implementar un poco de seguridad. Nunca viene mal y nunca faltan los hackers jeje.

Quedo a tu disposición.
Saludos