Foros del Web » Programando para Internet » PHP »

Lectura de array pasado por formulario

Estas en el tema de Lectura de array pasado por formulario en el foro de PHP en Foros del Web. Hola, estoy teniendo un problema pasando un array en un select, en realidad el problema está que al recibirlo no puedo leer las componentes del ...
  #1 (permalink)  
Antiguo 27/03/2007, 19:25
 
Fecha de Ingreso: noviembre-2004
Mensajes: 9
Antigüedad: 19 años, 5 meses
Puntos: 0
Lectura de array pasado por formulario

Hola, estoy teniendo un problema pasando un array en un select, en realidad el problema está que al recibirlo no puedo leer las componentes del mismo ya que siempre imprime "Array" o si imprimo por indices[i] imprime cada una de las letras de la palabra Array en el orden. El foreach directamente tira error

Este es el codigo del formulario
Código PHP:
<?php
echo '<form name="formulario" method="post" action="index.php?operacion=verificar">';
echo 
'<select size="1" name="selector">';
$niveles = array('uno''dos''tres');
echo 
'<option select value ="'.$niveles.'">Primer elemento';
echo 
'</select>';
echo 
'</form>';
?>
Este es el codigo que lee

Código PHP:
<?php

$vector 
$_POST['selector'];

echo 
$vector[0];
echo 
$vector[1];
echo 
$vector[2];
echo 
$vector[3];
echo 
$vector[4];
echo 
$vector[5];

foreach (
$vector as $valor) { 
   echo 
"Valor: $valor<br>"
}
?>
Si alguien tiene una idea, se agradece
  #2 (permalink)  
Antiguo 27/03/2007, 20:08
AlvaroG
Invitado
 
Mensajes: n/a
Puntos:
Re: Lectura de array pasado por formulario

En el código HTML estás escribiendo $niveles, lo cual mostrará simplemente "Array".
Creo que lo que querés es hacer una option para cada entrada del vector, así que lo que necesitás es foreach()


Saludos.
  #3 (permalink)  
Antiguo 27/03/2007, 20:30
 
Fecha de Ingreso: abril-2006
Ubicación: Colombia
Mensajes: 648
Antigüedad: 18 años
Puntos: 3
Re: Lectura de array pasado por formulario

Hola

Pues prueba con esto

<?
$niveles = array('uno', 'dos', 'tres');
//$total contendra el total de elementos del array
$total = count($niveles);
echo '<form name="formulario" method="post" action="index.php?operacion=verificar">';
echo '<select size="1" name="selector" onchange=alert(formulario.selector.value)>';
//en el for se aumenta $i hasta cuando sea 1 numero menor que $total pues los arrays comienzan en 0
for($i = 0; $i<$total; $i++)
{
echo '<option select value='.$niveles[$i].'>'.$niveles[$i].'</option>';
}
echo '</select>';
echo '</form>';
?>
__________________
Suerte.
_______________________________
"La vida es el principio de la muerte".
  #4 (permalink)  
Antiguo 29/03/2007, 04:11
Avatar de puchitol  
Fecha de Ingreso: diciembre-2003
Ubicación: ELCHE
Mensajes: 322
Antigüedad: 20 años, 4 meses
Puntos: 0
Re: Lectura de array pasado por formulario

Hola,

yo te recomendaria hacer algo asi ...

formulario
Código PHP:
<?
echo '<form name="formulario" method="post" action="index.php?operacion=verificar">';
echo 
'<select size="1" name="selector[]">';

echo 
'<option value ="uno">elemento1</option>';
echo 
'<option value ="dos">elemento2</option>';
echo 
'<option value ="tres">elemento2</option>';
echo 
'</select>';
echo 
'</form>';
?>
el codigo que lee
Código PHP:
$vector$_POST['selector'];
for(
$i=0;count($vector);$i++) {
   echo 
vector[$i]." ";

podrias probar asi tambien, a ver que tal..

sludos
__________________
If you think fuck is funny, fuck yourself and save your money,
espero que entendais la moraleja... je, je, je
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 00:57.