[ Foro de PHP ]

arrays con select multiple

22-Mar-2019 01:56
roman villarreal
1 Respuestas

Hola especialistas y expertos del tema, gracias de antemano por su siempre útil ayuda, hoy traigo un tema que no he podido resolver y espero me puedan ayudar porque no encuentro en que me estoy equivocando.
Tengo una serie de n selects determinados por la variable $regcue, el formulario detecta y muestra los 7 selects y permite la selección de sus opciones, de esta forma:

@$p2ap=$_POST['p2ap'];
@$p2ap1=array();

//despues de una busqueda en una base de datos se determina que:

$regcue=7;

$respb=array('Siempre','Casi siempre','Casi nunca','Nunca','');
for($x1 = 0; $x1 < $regcue; $x1++)
{
  echo '<td><select name="p2ap[$x1]" value="$p2ap[$x1]">';
  for($x1a = 0; $x1a < count($respb); $x1a++)
  {
  if($respb[$x1a] == $_POST['p2ap[$x1a]']){$selected = ' selected';}
  else{$selected = '';}
  echo '<option value="'.$respb[$x1a].'"'.$selected.'>'.$respb[$x1a].'</option>';
  }
  echo '</select>';
  @$p2v=$p2ap['$x1'];
  array_push($p2ap1,$p2v);
}
echo " <td><input type='submit' name='botonenv' value='Continuar a la parte 3' >";
if (@$_POST['botonenv']=='Continuar a la parte 3') {print_r($p2ap1);}

Al presionar el submit el problema es que no me esta tomando los valores de los selects del arreglo y solo retiene el valor del ultimo select (en este caso "Nunca") y obtengo como resultado:

Array ( [0] => Nunca [1] => Nunca [2] => Nunca [3] => Nunca [4] => Nunca [5] => Nunca [6] => Nunca )

el resultado se repite en todo el arreglo con el valor del ultimo select aun cuando los 6 anteriores son de valores distintos

podrian ayudarme a saber en donde me estoy equivocando?????

por su gran ayuda como siempre, Gracias. y reciban un cordial saludos


26-Mar-2019 22:58
Nacho Cabanes (+84)

Lo ideal sería un fragmento ligeramente más completo, autocontenido, que se pudiera probar, pero en ese código faltan detalles, porque hay datos que se reciben por POST y hay un formulario que no se llega a ver. Puedes convertir eso a un único formulario que se llame a sí mismo.

Aun así, como primera aproximación, ¿qué ves en el código fuente del navegador (HTML) al lanzar ese PHP?






(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)