Foro de elhacker.net

Programación => PHP => Mensaje iniciado por: survil en 22 Febrero 2008, 03:18 am



Título: crear variables en tiempo de ejecucion
Publicado por: survil en 22 Febrero 2008, 03:18 am
bueno resulta que tengo un formulario en el cual se generan unos <input type="text" name="notaN">, donde N se va incrementando, osea en forma dinamica, ejemplo:
<input type="text" name="nota1">
<input type="text" name="nota2">
<input type="text" name="nota3">
                                       
 osea dependiendo de unas opciones que realize el usuario, se crean 2,3,5,10,40, en fin, Repito dependiendo de las opciones seleccionadas por el usuario.

hasta aQui todo bien, el problema viene cuando este formulario lo envio un PHP (guardar.php)

pues simplemente nose como hacer referencias a esos input(variables) ya que no se cual sera la cantidad de: "<input type="text" name="nota">", por ello es que he pensado en crear variables en tiempo de ejecucion.
 
la forma normal para capturar el valor en PHP de: <input type="text" name="nota3">

es: $nota3, ya con eso tengo el valor. pero como dije al no saber de antemano cuantos de estos input voy a tener pues no he encontrado la forma de hacer referencia a ellos, he intentado con cosas parecidas a estas:
<?php


for($i=1; $i<=$oculto; $i++)
{

echo '$nota$'.1;  //esto lo en modificado de varias formas y nada

}

donde $oculto es el numero de input`s (habia dicho mas arriba que no sabia el de input's, bueno con $oculto si lo sč, el cual es un hidden  ::))

Bueno espero que entendais..

bueno en conclusion lo que Quiero es crear variables que hagan referencia a los valores de esos input.

Cualquier sugerencia es bienvenida.   


Título: Re: crear variables en tiempo de ejecucion
Publicado por: SirLanceCC en 22 Febrero 2008, 03:43 am
Código
  1. $x = 1;
  2. $nombre = 'nota'.$x;
  3. echo $$nombre; // $(nombre1)... entiendes? está loco esto...
  4. //o bien.. si lo recojes de un formulario por que no haces esto?
  5. echo $_GET[$nombre];
  6.  


Título: Re: crear variables en tiempo de ejecucion
Publicado por: survil en 22 Febrero 2008, 03:59 am
Código
  1. $x = 1;
  2. $nombre = 'nota'.$x;
  3.  

oye -| Sir_Lance |- Muchisimas Gracias Brother!! es exactamente lo que necesitaba.

Saludos!!!


Título: Re: crear variables en tiempo de ejecucion
Publicado por: Azielito en 25 Febrero 2008, 16:58 pm
Mejor seria enviar arreglos
Código
  1. <input type='text' name='nota[]'>
  2. <input type='text' name='nota[]'>
  3. <input type='text' name='nota[]'>
  4. <input type='text' name='nota[]'>
  5. <input type='text' name='nota[]'>
  6. [...]
  7. <input type='text' name='nota[]'>
  8.  
y luego simplemente recorrer ese areglo
Código
  1. <?php
  2. $x=1;
  3. foreach($_REQUEST['nota'] as $valor){
  4. echo 'nota '.$x.':'.$valor;
  5. $x++;
  6. }
  7. ?>