Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   PHP (https://www.clubdelphi.com/foros/forumdisplay.php?f=15)
-   -   Insertar datos en un array con un bucle (https://www.clubdelphi.com/foros/showthread.php?t=82355)

jandroruiz 27-02-2013 14:01:02

Insertar datos en un array con un bucle
 
Hola a todos

Pongamos que tengo las variables $a1, $a2 y $a3 que he obtenido por POST de un formulario en HTML. Quiero insertarlas en un array $contenedor[], pero quiero hacerlo con un bucle for. Por ejemplo

for($i=0;$i<3;$i++)
{
$contenedor[$i] = $a(algo que haga que el valor de la variable $i sustituya a 1, 2 y 3)
}

Muchas gracias

Un saludo

movorack 27-02-2013 14:58:01

hola,

algo así podría ser de ayuda...

Código PHP:

$i 0;
foreach(
$_POST as $nombre_campo => $valor) { 
  
$contenedor[$i] = $valor;
  
$i++;
}; 

Ten en cuenta que antes de procesar directamente una variable que venga de un formulario ya se a por post o get, debes evaluarla para evitar SQLi o XSS.

cloayza 27-02-2013 15:09:33

Prueba con este código

Código PHP:

<?PHP
  
//Variables ejemplo
  
$a1='Uno';
  
$a2='Dos';
  
$a3='Tres';

  for(
$i=1;$i<4;$i++)
  {
    
$value='$a'.$i//Forma la variable de acuerdo al indice $a?=>$a1..$a3
    
eval("\$value = \"$value\";"); //Evalua la variable formada $value y deja el valor en $value.
    
$contenedor[$i] = $value$asigna el valor a vector.
  }
  
var_dump($contenedor);
?>

Saludos cordiales

Julián 27-02-2013 18:09:28

Código PHP:

$a1 'xx';
$a2 'yy';
$a3 'zz';

$contenedor = array();

for(
$i=1;$i<=3;$i++)
{
  
$contenedor[$i] = ${'a'.$i};
}

print_r($contenedor); 


jandroruiz 27-02-2013 18:09:46

cloayza, me funciona lo que has puesto, pero querría hacerlo más simple, si es posible

Digamos que tengo esto: $dias = array($_POST['dia1'],$_POST['dia2'],$_POST['dia3'],$_POST['dia4']);

y quiero reducirlo a un bucle con for que sustituya 1,2,3,4 por el contador $i

Algo así:

for($i=1;$i<5;$i++)
{
$dias[$i]= $_POST['dia(algo que sustituya el número por $i)']
}

Muchas gracias

Un saludo

jandroruiz 27-02-2013 18:21:34

Gracias, Julián, era justo lo que necesitaba.

Julián 27-02-2013 18:39:48

Cita:

Empezado por jandroruiz (Mensaje 455684)
Gracias, Julián, era justo lo que necesitaba.


Se llaman variables variables: http://php.net/manual/es/language.va...s.variable.php

Un saludo!

Casimiro Notevi 27-02-2013 19:00:50

Cita:

Empezado por jandroruiz (Mensaje 455683)
..

Recuerda poner los tags al código fuente, ejemplo:



Gracias :)

jandroruiz 28-02-2013 11:36:08

Ok. Soy novato en el foro, las próximas consultas lo intentaré hacer como dices.

Casimiro Notevi 28-02-2013 11:55:03

Cita:

Empezado por jandroruiz (Mensaje 455725)
Ok. Soy novato en el foro, las próximas consultas lo intentaré hacer como dices.

^\||/
...........


La franja horaria es GMT +2. Ahora son las 02:00:53.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi