Foros del Web » Programando para Internet » PHP »

Duda con $_POST en PHP

Estas en el tema de Duda con $_POST en PHP en el foro de PHP en Foros del Web. hola tengo el siguiente codigo, en el cual creo una tabla dinamica a partir de resultados obtenidos de la base de datos y a la ...
  #1 (permalink)  
Antiguo 10/09/2009, 12:24
 
Fecha de Ingreso: abril-2009
Mensajes: 80
Antigüedad: 15 años
Puntos: 0
Duda con $_POST en PHP

hola tengo el siguiente codigo, en el cual creo una tabla dinamica a partir de resultados obtenidos de la base de datos y a la vez creo 6 campos de texto dianmicos y en blanco para cada resultado, a cada uno de ellos le asigno los nombre a_$i , b_$i, c_$I y asi sucesivamente para diferenciar los 6 campos de texto de cada uno de los resultados, el problema esta a la hora de recibir estos resultados en otra pagina, si hago esto $_POST['a_$i'], PHP no lo reconoce, que de beria hacer entonces para recibir todos esos datos?
Aqui les dejo el codigo.

$result = $obj->VerActividades();
?>
<form action="../Logica/CaptarEstadisticas.php" method="post">
<table border="1">
<tr>
<td>Actividad</td><td>Mañana</td><td>Tarde</td><td>Noche</td><td>8:00pm-10:00pm</td><td>10:00pm-12:00pm</td><td>12:00pm-2:00am</td>
</tr>
<?php
$i=0;
//$var="a";
while($row=$result->fetch_array())
{
//$nombre = $var+$i;
echo "<tr>";
echo "<td>".$row['nomb_act']."</td>";
echo "<td><input type='text' name='a_$i' /></td>";
echo "<td><input type='text' name='b_$i' /></td>";
echo "<td><input type='text' name='c_$i' /></td>";
echo "<td><input type='text' name='d_$i' /></td>";
echo "<td><input type='text' name='e_$i' /></td>";
echo "<td><input type='text' name='f_$i' /></td>";
echo "</tr>";
$i++;
}
?>
<tr>
<td></td><td><input type="submit" value="Enviar" /></td><td></td><td></td><td></td><td></td><td></td>
</tr>
</table>
</form>
  #2 (permalink)  
Antiguo 10/09/2009, 12:29
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 14 años, 11 meses
Puntos: 1517
Respuesta: Duda con $_POST en PHP

Para eso lo mejor es trabajar en forma de array y no asignarles numero. Algo así me refiero

Código PHP:
Ver original
  1. while($row=$result->fetch_array())
  2. {
  3. //$nombre = $var+$i;
  4. echo "<tr>";
  5. echo "<td>".$row['nomb_act']."</td>";
  6. echo "<td><input type='text' name='a[]' /></td>";
  7. echo "<td><input type='text' name='b[]' /></td>";
  8. echo "<td><input type='text' name='c[]' /></td>";
  9. echo "<td><input type='text' name='d[]' /></td>";
  10. echo "<td><input type='text' name='e[]' /></td>";
  11. echo "<td><input type='text' name='f[]' /></td>";
  12. echo "</tr>";
  13. $i++;
  14. }
  15. ?>

El post se manejaria de esta forma
Código PHP:
Ver original
  1. $_POST["a"][0];
  2. $_POST["a"][1];
  3. $_POST["a"][2];
  4. $_POST["a"][3];
  5. $_POST["a"][4];
  6. $_POST["a"][5];
Y así sucesivamente con las otras letras (b, c, d, e, f)
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #3 (permalink)  
Antiguo 10/09/2009, 12:29
Avatar de gjx2  
Fecha de Ingreso: agosto-2008
Ubicación: R.D
Mensajes: 1.153
Antigüedad: 15 años, 8 meses
Puntos: 139
Respuesta: Duda con $_POST en PHP

una variable dentro de comillas simples php no reconoce su valor
La imprime como un literal. puedes usar una de estas dos formas.

Código php:
Ver original
  1. $_POST['a_'.$i];
  2. o
  3. $_POST["a_$i"];
  #4 (permalink)  
Antiguo 10/09/2009, 12:48
 
Fecha de Ingreso: abril-2009
Mensajes: 80
Antigüedad: 15 años
Puntos: 0
Respuesta: Duda con $_POST en PHP

Muchisimas gracias a ambos, ya probe de las dos formas y funciona, estoy muy agradecido
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 14:37.