Foros del Web » Programando para Internet » PHP »

"variables variables" (variable con nombre del valor de otra) y envío de Formulario

Estas en el tema de "variables variables" (variable con nombre del valor de otra) y envío de Formulario en el foro de PHP en Foros del Web. El problema fue solucionado, dejo información útil al comienzo del tema. ---------------- Para continuar el tema de "variables variables" dejo acá un fragmento del Tema2-Lenguaje ...
  #1 (permalink)  
Antiguo 18/02/2008, 13:48
Avatar de migueljga  
Fecha de Ingreso: enero-2008
Mensajes: 35
Antigüedad: 16 años, 3 meses
Puntos: 0
"variables variables" (variable con nombre del valor de otra) y envío de Formulario

El problema fue solucionado, dejo información útil al comienzo del tema.

----------------

Para continuar el tema de "variables variables" dejo acá un fragmento del Tema2-Lenguaje PHP básico del curso de José Mariano González Romano que indica lo siguiente:

Variables variables
Se pueden crear nombres de variables dinámicamente
La variable variable toma su nombre del valor de otra variable previamente declarada
Ejemplo:
Código PHP:
    $a "hola";
    $
$a "mundo";

    print 
"$a $hola\n";
    print 
"$a ${$a}"
Resultado:
Código HTML:
		hola mundo
		hola mundo
Ejemplo 1:
Código PHP:
<?PHP
   $mensaje_es
="Hola";
   
$mensaje_en="Hello";
   
$idioma "es";
   
$mensaje "mensaje_" $idioma;
   print $
$mensaje;
?>
Resultado:
Código HTML:
Hola
Ejemplo 2:
Código PHP:
<?PHP
   $mensaje_es
="Hola";
   
$mensaje_en="Hello";
   
$idioma "en";
   
$mensaje "mensaje_" $idioma;
   print $
$mensaje;
?>
Resultado:
Código HTML:
Hello
------

Espero les sea útil esta información, no se si ya se ha discutido en otro tema de este foro, pero a mi me ha servido de mucho.

-------------------
Mensaje Original:

Hola, mi problema es el siguienter:

Envío un formulario cuyos input's tienen por nombre:
i_punto1, i_punto2... y así sucesivamente, tambien otro gurpo de input's con los nombres:
p_punto11, p_punto12, p_punto21, p_punto22, y varios siguiendo el mismo patrón.

Esos datos quiero guardarlos en variables con el mismo nombre.
Uso el siguiente bucle para capturar los datos enviados:
Código PHP:
for ($i=1;$i==6;$i++)
{
    
$nombre="i_punto".$i;
    $
$nombre=$_REQUEST[$$nombre];
    for (
$n=1;$n==6;$n++)
    {
        
$nombre="p_punto".$i.$n;
        $
$nombre=$_REQUEST[$$nombre];
    }    


al mandar a imprimir un dato dentro de un input, simplemente no aparece

Código HTML:
<input name="p_punto11" type="text" id="p_punto11" value="<?php echo $p_punto11 ?>" size="4"> 
¿qué es lo que sucede?

Miguel ^^

Última edición por migueljga; 19/02/2008 a las 07:32 Razón: Mostrar información útil al comienzo
  #2 (permalink)  
Antiguo 18/02/2008, 14:25
Avatar de jpinedo
Colaborador
 
Fecha de Ingreso: septiembre-2003
Ubicación: Lima, Perú
Mensajes: 3.120
Antigüedad: 20 años, 7 meses
Puntos: 41
Re: "variables variables" ¿Están correctas estas capturas de datos enviados?

Hola:

No he probado tu código pero, a simple vista, te puedo decir que tienes un error de concepto en la sintaxis que utilizas para for().

for( A; B; C)

A: Se ejecuta al empezar la primera iteración.
B: Es una condición. Si se cumple, se ejecuta la iteración. Si no se cumple, no se ejecuta.
C. Se ejecuta antes de cada nueva iteración.

En tu caso, la parte B es: $i == 6;
Como al principio $i vale 1 (no vale 6), la condición no se cumple y no se ejecuta ninguna iteración.

Lo correcto sería $i <= 6;

Saludos,
  #3 (permalink)  
Antiguo 18/02/2008, 14:47
Avatar de migueljga  
Fecha de Ingreso: enero-2008
Mensajes: 35
Antigüedad: 16 años, 3 meses
Puntos: 0
Re: "variables variables" ¿Están correctas estas capturas de datos enviados?

Tienes razón, imprimí carácteres de prueba, y el for no se ejecutaba...
para mi sorpresa los datos aun no se imprimen... lo que pienso hacer es eliminar un simbolo '$' de los "REQUEST" pues al parecer hay uno demás
  #4 (permalink)  
Antiguo 18/02/2008, 14:51
Avatar de migueljga  
Fecha de Ingreso: enero-2008
Mensajes: 35
Antigüedad: 16 años, 3 meses
Puntos: 0
Re: "variables variables" ¿Están correctas estas capturas de datos enviados?

Ya pude mostrar la información luego de modificar el for y eliminar el simbolo "$"
Muchas Gracias por la ayuda!!


Miguel n_n
  #5 (permalink)  
Antiguo 18/02/2008, 14:52
Avatar de jpinedo
Colaborador
 
Fecha de Ingreso: septiembre-2003
Ubicación: Lima, Perú
Mensajes: 3.120
Antigüedad: 20 años, 7 meses
Puntos: 41
Re: "variables variables" ¿Están correctas estas capturas de datos enviados?

Cita:
para mi sorpresa los datos aun no se imprimen
No veo ninguna instrucción que mande a imprimir (echo, print, etc.).

Saludos,
  #6 (permalink)  
Antiguo 18/02/2008, 14:58
Avatar de migueljga  
Fecha de Ingreso: enero-2008
Mensajes: 35
Antigüedad: 16 años, 3 meses
Puntos: 0
Re: "variables variables" (variable con nombre del valor de otra) y envío de Formula

Las sentencias de impresión las usé en mi código oficial xD
trato de no saturar los mensajes con información fuera de lugar.
Gracias
  #7 (permalink)  
Antiguo 18/02/2008, 18:35
Avatar de jorgedx  
Fecha de Ingreso: junio-2005
Ubicación: Chile, Los Andes
Mensajes: 406
Antigüedad: 18 años, 10 meses
Puntos: 4
Re: "variables variables" (variable con nombre del valor de otra) y envío de Formula

no se satura, ayuda a entender mejor el problema.
__________________
Nuevamente a las pistas ...
  #8 (permalink)  
Antiguo 18/02/2008, 21:55
Avatar de migueljga  
Fecha de Ingreso: enero-2008
Mensajes: 35
Antigüedad: 16 años, 3 meses
Puntos: 0
Re: "variables variables" (variable con nombre del valor de otra) y envío de Formula

Para continuar el tema de "variables variables" dejo acá un fragmento del Tema2-Lenguaje PHP básico del curso de José Mariano González Romano que indica lo siguiente:

Variables variables
Se pueden crear nombres de variables dinámicamente
La variable variable toma su nombre del valor de otra variable previamente declarada
Ejemplo:
Código PHP:
    $a "hola";
    $
$a "mundo";

    print 
"$a $hola\n";
    print 
"$a ${$a}"
Resultado:
Código HTML:
		hola mundo
		hola mundo
Ejemplo 1:
Código PHP:
<?PHP
   $mensaje_es
="Hola";
   
$mensaje_en="Hello";
   
$idioma "es";
   
$mensaje "mensaje_" $idioma;
   print $
$mensaje;
?>
Resultado:
Código HTML:
Hola
Ejemplo 2:
Código PHP:
<?PHP
   $mensaje_es
="Hola";
   
$mensaje_en="Hello";
   
$idioma "en";
   
$mensaje "mensaje_" $idioma;
   print $
$mensaje;
?>
Resultado:
Código HTML:
Hello
------

Espero les sea útil esta información, no se si ya se ha discutido en otro tema de este foro, pero a mi me ha servido de mucho.

Saludos

Miguel ^^
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

SíEste tema le ha gustado a 3 personas (incluyéndote)




La zona horaria es GMT -6. Ahora son las 13:03.