Foros del Web » Programando para Internet » PHP »

Recorrer bien este array...

Estas en el tema de Recorrer bien este array... en el foro de PHP en Foros del Web. Buenas Estoy recibiendo un array por post y necesito recorrerlo bien para mostrar todos los datos que me llegan, es decir hago: $mivar = $_POST["clientes"][1]; ...

  #1 (permalink)  
Antiguo 10/08/2010, 11:49
 
Fecha de Ingreso: agosto-2003
Mensajes: 906
Antigüedad: 20 años, 8 meses
Puntos: 3
Recorrer bien este array...

Buenas

Estoy recibiendo un array por post y necesito recorrerlo bien para mostrar todos los datos que me llegan, es decir hago:

$mivar = $_POST["clientes"][1];

y si hago echo $mivar; me imprime Lucs

pero si pongo

$mivar = $_POST["clientes"][0];

y si hago echo $mivar; me imprime Claudio

como hago para recorrer todos?
  #2 (permalink)  
Antiguo 10/08/2010, 11:56
Avatar de carlos_belisario
Colaborador
 
Fecha de Ingreso: abril-2010
Ubicación: Venezuela Maracay Aragua
Mensajes: 3.156
Antigüedad: 14 años
Puntos: 461
Respuesta: Recorrer bien este array...

bueno para recorrer array necesitas un bucle normalmente foreach pero puedesutilizar cualkiera suerte
__________________
aprende d tus errores e incrementa tu conocimientos
it's not a bug, it's an undocumented feature By @David
php the right way
  #3 (permalink)  
Antiguo 10/08/2010, 11:57
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Tokyo - Japan !
Mensajes: 3.867
Antigüedad: 14 años, 6 meses
Puntos: 334
Respuesta: Recorrer bien este array...

Código PHP:
Ver original
  1. foreach($_POST["clientes"] as $key => $value)
???
__________________
More about me...
~ @rhyudek1
~ Github
  #4 (permalink)  
Antiguo 10/08/2010, 12:11
 
Fecha de Ingreso: agosto-2003
Mensajes: 906
Antigüedad: 20 años, 8 meses
Puntos: 3
Respuesta: Recorrer bien este array...

hago:

Código PHP:
foreach($_POST["clientes"] as $key => $value) {
        
$nombres $key;
        }
                print 
$nombres
y me imprime 1...

no deberia ser 0, 1, 2 y todos los que haya?
  #5 (permalink)  
Antiguo 10/08/2010, 12:13
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Tokyo - Japan !
Mensajes: 3.867
Antigüedad: 14 años, 6 meses
Puntos: 334
Respuesta: Recorrer bien este array...

debes leer el manual de php con urgencia :P

estas imprimiendo fuera del bucle

Código PHP:
Ver original
  1. foreach($_POST["qclientes"] as $key => $value) {
  2.     print $value . "<br>\n";
  3. }
__________________
More about me...
~ @rhyudek1
~ Github
  #6 (permalink)  
Antiguo 10/08/2010, 12:15
Avatar de carlos_belisario
Colaborador
 
Fecha de Ingreso: abril-2010
Ubicación: Venezuela Maracay Aragua
Mensajes: 3.156
Antigüedad: 14 años
Puntos: 461
Respuesta: Recorrer bien este array...

al sacarlo del bucle obvio que te va a imprimir el ultimo valor es decir tienes dos datos en el $_POST por eso te imprime 1 si haces el echo dentro del bucle entonces te va a ir mostrando cada uno de los indices suerte jaja se me adelanto jaja bue lo importante es ayudar
__________________
aprende d tus errores e incrementa tu conocimientos
it's not a bug, it's an undocumented feature By @David
php the right way

Última edición por carlos_belisario; 10/08/2010 a las 12:15 Razón: se me adelantaron jaja
  #7 (permalink)  
Antiguo 10/08/2010, 12:16
 
Fecha de Ingreso: agosto-2003
Mensajes: 906
Antigüedad: 20 años, 8 meses
Puntos: 3
Respuesta: Recorrer bien este array...

necesito imprimirlo si o si fuera del bucle puesto que lo mando a un lightbox que muestra los datos...y dicho lighbox esta aparte...

por eso lo guardo en una variable antes...

lo resolvi facilmente agregando un . a la variable
  #8 (permalink)  
Antiguo 10/08/2010, 12:21
Avatar de carlos_belisario
Colaborador
 
Fecha de Ingreso: abril-2010
Ubicación: Venezuela Maracay Aragua
Mensajes: 3.156
Antigüedad: 14 años
Puntos: 461
Respuesta: Recorrer bien este array...

a necesitabas era concatenar el array?? averlo dicho antes jaja bueno lo importante es q lo resolviste suerte
__________________
aprende d tus errores e incrementa tu conocimientos
it's not a bug, it's an undocumented feature By @David
php the right way
  #9 (permalink)  
Antiguo 11/08/2010, 14:23
 
Fecha de Ingreso: agosto-2003
Mensajes: 906
Antigüedad: 20 años, 8 meses
Puntos: 3
Respuesta: Recorrer bien este array...

me queda por ejemplo:

$array[1] me muestra lucas
$array[2] me muestra claudio y asi..

como los recorro para no hacer uno por uno?
  #10 (permalink)  
Antiguo 11/08/2010, 14:26
Avatar de carlos_belisario
Colaborador
 
Fecha de Ingreso: abril-2010
Ubicación: Venezuela Maracay Aragua
Mensajes: 3.156
Antigüedad: 14 años
Puntos: 461
Respuesta: Recorrer bien este array...

para trabajar los array debes usar un bucle para no hacerlo 1 por 1 puedes usar un for o un foreach como ya te aviamos indicado anteriormente suerte
__________________
aprende d tus errores e incrementa tu conocimientos
it's not a bug, it's an undocumented feature By @David
php the right way
  #11 (permalink)  
Antiguo 11/08/2010, 14:30
 
Fecha de Ingreso: agosto-2003
Mensajes: 906
Antigüedad: 20 años, 8 meses
Puntos: 3
Respuesta: Recorrer bien este array...

esto no me ha funcionado

foreach($array as $k => $v) {
$lucas = $v;
echo $lucas;
}
no muestra nada...pero array[1] si
  #12 (permalink)  
Antiguo 11/08/2010, 14:36
Avatar de carlos_belisario
Colaborador
 
Fecha de Ingreso: abril-2010
Ubicación: Venezuela Maracay Aragua
Mensajes: 3.156
Antigüedad: 14 años
Puntos: 461
Respuesta: Recorrer bien este array...

bueno la sintaxi se bien noc q pueda estar pasando intentalo con un for entonces algo asi
Código PHP:
for($i=0;$i<count($array);$i++){
     echo 
$array[$i];

a ver si asi si te funciona
__________________
aprende d tus errores e incrementa tu conocimientos
it's not a bug, it's an undocumented feature By @David
php the right way
  #13 (permalink)  
Antiguo 11/08/2010, 15:05
 
Fecha de Ingreso: agosto-2003
Mensajes: 906
Antigüedad: 20 años, 8 meses
Puntos: 3
Respuesta: Recorrer bien este array...

no che..sigue igual no muestra nada, pero usando el nro si...poniendo 1 o 0...o lo que sea...

ojo lo imprimo fuera del for dentro de un lightbox...sera eso? que solucion hay?
  #14 (permalink)  
Antiguo 11/08/2010, 15:07
Avatar de carlos_belisario
Colaborador
 
Fecha de Ingreso: abril-2010
Ubicación: Venezuela Maracay Aragua
Mensajes: 3.156
Antigüedad: 14 años
Puntos: 461
Respuesta: Recorrer bien este array...

bueno puedes poner como lo colocas para ver q puede estar pasando
__________________
aprende d tus errores e incrementa tu conocimientos
it's not a bug, it's an undocumented feature By @David
php the right way
  #15 (permalink)  
Antiguo 11/08/2010, 15:15
Avatar de OsSk4R  
Fecha de Ingreso: octubre-2006
Ubicación: $this->home
Mensajes: 824
Antigüedad: 17 años, 6 meses
Puntos: 74
Respuesta: Recorrer bien este array...

Buenas,

Si tienes un foreach, y quieres que el array se muestre fuera de ese foreach, podrias hacer lo siguiente:

Código PHP:
Ver original
  1. foreach ($array as $value ) {
  2.     $mostrar .= $value;
  3. }  
  4.     echo "$mostrar";

Saludos,
  #16 (permalink)  
Antiguo 11/08/2010, 15:19
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Tokyo - Japan !
Mensajes: 3.867
Antigüedad: 14 años, 6 meses
Puntos: 334
Respuesta: Recorrer bien este array...

o usar implode()?
Código PHP:
Ver original
  1. echo implode(" - ", $matriz);
__________________
More about me...
~ @rhyudek1
~ Github
  #17 (permalink)  
Antiguo 11/08/2010, 15:22
Avatar de Nemutagk
Colaborador
 
Fecha de Ingreso: marzo-2004
Ubicación: México
Mensajes: 2.633
Antigüedad: 20 años
Puntos: 406
Respuesta: Recorrer bien este array...

Para eso no es necesario un bucle, tan solo se hace un implode...
Código PHP:
Ver original
  1. $mivar = implode(',',$miarray);
__________________
Listo?, tendría que tener 60 puntos menos de IQ para considerarme listo!!!
-- Sheldon Cooper
http://twitter.com/nemutagk
PD: No contestaré temas vía mensaje personal =)
  #18 (permalink)  
Antiguo 11/08/2010, 15:26
Avatar de OsSk4R  
Fecha de Ingreso: octubre-2006
Ubicación: $this->home
Mensajes: 824
Antigüedad: 17 años, 6 meses
Puntos: 74
Respuesta: Recorrer bien este array...

Estas son las bondades de PHP. Lo podemos hacer de cualquier manera. :)

Saludos
  #19 (permalink)  
Antiguo 12/08/2010, 07:21
 
Fecha de Ingreso: agosto-2003
Mensajes: 906
Antigüedad: 20 años, 8 meses
Puntos: 3
Respuesta: Recorrer bien este array...

Cita:
Iniciado por DeFFeR Ver Mensaje
Buenas,

Si tienes un foreach, y quieres que el array se muestre fuera de ese foreach, podrias hacer lo siguiente:

Código PHP:
Ver original
  1. foreach ($array as $value ) {
  2.     $mostrar .= $value;
  3. }  
  4.     echo "$mostrar";

Saludos,
Probe de esa manera y me hace lo mismo, es decir cuando imprimo el $mostrar me tira

nombre1_lucas
nombre2_claudio
nombre3_juan

Y yo quiero sacar las variables lucas, claudio y juan para mostrarlas solas y poder trabajarlas aparte...ya que debo asignarle impuestos diferentes a cada una, pero eso ya es mas algo mio, lo que no logro es separarlas...
  #20 (permalink)  
Antiguo 12/08/2010, 07:26
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Tokyo - Japan !
Mensajes: 3.867
Antigüedad: 14 años, 6 meses
Puntos: 334
Respuesta: Recorrer bien este array...

Código PHP:
Ver original
  1. $array = ("nombre1" => "lucas", "nombre2" => "claudio", "nombre3" => "juan");
  2. foreach($array as $key => $value) $$key = $value;
  3. echo $nombre1;
  4. echo $nombre2;
  5. echo $nombre3;
__________________
More about me...
~ @rhyudek1
~ Github
  #21 (permalink)  
Antiguo 13/08/2010, 09:39
 
Fecha de Ingreso: agosto-2003
Mensajes: 906
Antigüedad: 20 años, 8 meses
Puntos: 3
Respuesta: Recorrer bien este array...

me trae el ultimo valor, al hacer por ej

foreach ($_POST['nombres'] as $id => $valor) {
$todos = $id;
}
print $id;

me imprime la ultima id..

y si le agrego .$id me trae todo junto 0123 y no se sirve...alguna idea para solucionar esto?
  #22 (permalink)  
Antiguo 13/08/2010, 09:58
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Tokyo - Japan !
Mensajes: 3.867
Antigüedad: 14 años, 6 meses
Puntos: 334
Respuesta: Recorrer bien este array...

Cita:
Iniciado por SeNdEr2003 Ver Mensaje
me trae el ultimo valor, al hacer por ej

foreach ($_POST['nombres'] as $id => $valor) {
$todos = $id;
}
print $id;

me imprime la ultima id..

y si le agrego .$id me trae todo junto 0123 y no se sirve...alguna idea para solucionar esto?
te acabo de dar una respuesta x'D? usa variables variables si no quieres usar array
__________________
More about me...
~ @rhyudek1
~ Github
  #23 (permalink)  
Antiguo 13/08/2010, 10:00
 
Fecha de Ingreso: agosto-2003
Mensajes: 906
Antigüedad: 20 años, 8 meses
Puntos: 3
Respuesta: Recorrer bien este array...

Cita:
Iniciado por Hidek1 Ver Mensaje
te acabo de dar una respuesta x'D? usa variables variables si no quieres usar array
mmm pero eso es sabiendo cuantas variables tengo, cuales son sus nombres, yo no tengo esos datos..
  #24 (permalink)  
Antiguo 13/08/2010, 10:05
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Recorrer bien este array...

Cita:
Iniciado por SeNdEr2003 Ver Mensaje
mmm pero eso es sabiendo cuantas variables tengo, cuales son sus nombres, yo no tengo esos datos..
ese es precisamente el problema de un mal diseño de solución...

si ni siquieras sabes lo que tienes, ¿como esperas obtenerlo?
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #25 (permalink)  
Antiguo 13/08/2010, 12:21
 
Fecha de Ingreso: agosto-2003
Mensajes: 906
Antigüedad: 20 años, 8 meses
Puntos: 3
Respuesta: Recorrer bien este array...

la solucion esta bien, el usuario selecciona de un par de opciones mediante checkbox y me llegan todas y debo recorrerlas, por eso yo no se ni cuantas selecciona ni cuales...si? ese es el drama.
  #26 (permalink)  
Antiguo 13/08/2010, 12:26
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Recorrer bien este array...

Cita:
Iniciado por SeNdEr2003 Ver Mensaje
la solucion esta bien, el usuario selecciona de un par de opciones mediante checkbox y me llegan todas y debo recorrerlas, por eso yo no se ni cuantas selecciona ni cuales...si? ese es el drama.
precisamente por eso vienes usando la estructura de array... pues es mas fácil de tratarla y recorrerla... ¿o no?

pero cometes tremenda equivocación cuando por alguna razón, ¿necesitas almacenar el array en otro array?

y ahí te empiezas a confundir... ¿para que asignar otro array si ya tienes uno?

¿si entiendes?

el proceso lo debes hacer dentro del ciclo donde iteras el arreglo, pues... al asignar tus variables, o como quieras... ya después ni idea tienes de como tratarlas!!

¿pero para que?

y esto se vuelve redundante... cuando ya tengas tus variables en otro arreglo, no vas a saber como tratarlas de nuevo, etc, etc...

porque lo único que vengo leyendo en este tema es pan con lo mismo, iterar arreglos, iterar arreglos, iterar arreglos, ...
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #27 (permalink)  
Antiguo 13/08/2010, 12:58
 
Fecha de Ingreso: agosto-2003
Mensajes: 906
Antigüedad: 20 años, 8 meses
Puntos: 3
Respuesta: Recorrer bien este array...

bueno y que solucion darias?...tan clara que la tienes...
  #28 (permalink)  
Antiguo 13/08/2010, 13:02
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Recorrer bien este array...

Cita:
Iniciado por SeNdEr2003 Ver Mensaje
bueno y que solucion darias?...tan clara que la tienes...
¿pues, que aprendas a usar arrays?
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #29 (permalink)  
Antiguo 13/08/2010, 13:12
 
Fecha de Ingreso: diciembre-2007
Mensajes: 467
Antigüedad: 16 años, 4 meses
Puntos: 3
Respuesta: Recorrer bien este array...

Hola:

Estuve mirando un poco el post. Te hago una pregunta, vos querés enviar los datos de un formulario que tiene checks y el problema es que no sabés cuántos checks tiene el formulario?


Federico
  #30 (permalink)  
Antiguo 13/08/2010, 13:13
 
Fecha de Ingreso: agosto-2003
Mensajes: 906
Antigüedad: 20 años, 8 meses
Puntos: 3
Respuesta: Recorrer bien este array...

Cita:
Iniciado por fede1976 Ver Mensaje
Hola:

Estuve mirando un poco el post. Te hago una pregunta, vos querés enviar los datos de un formulario que tiene checks y el problema es que no sabés cuántos checks tiene el formulario?


Federico
Claro, eso lo carga el admin, no se cuantos checks tiene ni tampoco cuantos selecciona luego el usuario.

Etiquetas: recorrer
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 13:18.