Foros del Web » Programando para Internet » PHP »

foreach sin repetir

Estas en el tema de foreach sin repetir en el foro de PHP en Foros del Web. tengo este codigo Código PHP: $xml  = new  SimpleXMLElement ( $xml_response );  //Simple XML is available from php5              foreach ( $xml -> resultados -> cotizados -> articulo  as  $sarticulo ) {              ...
  #1 (permalink)  
Antiguo 22/06/2010, 09:43
(Desactivado)
 
Fecha de Ingreso: mayo-2008
Mensajes: 67
Antigüedad: 15 años, 11 meses
Puntos: 0
foreach sin repetir

tengo este codigo
Código PHP:
$xml = new SimpleXMLElement($xml_response); //Simple XML is available from php5

            
foreach ($xml->resultados->cotizados->articulo as $sarticulo) {
            
$variable $sarticulo->nombre_prestatario;
            
        echo 
$variable.'<br>';    

            } 

en el cual la variable $variable me muestra los nombres de todos los prestatarios pero hay varios repetidos como hago para que no se repitan los valores del nombre del prestatario? y que solo me muestre los nombres de los prestatarios sin ningun repetido .
  #2 (permalink)  
Antiguo 22/06/2010, 09:52
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Tokyo - Japan !
Mensajes: 3.867
Antigüedad: 14 años, 6 meses
Puntos: 334
Respuesta: foreach sin repetir

puedes guardar en un array.. y luego usar array_unique para eliminar repeticiones y luego imprimes

Código PHP:
Ver original
  1. foreach ($xml->resultados->cotizados->articulo as $sarticulo) {
  2.   $variable[] = $sarticulo->nombre_prestatario;
  3. }
  4. echo implode("<br />", array_unique($variable));
__________________
More about me...
~ @rhyudek1
~ Github
  #3 (permalink)  
Antiguo 22/06/2010, 09:55
(Desactivado)
 
Fecha de Ingreso: mayo-2008
Mensajes: 67
Antigüedad: 15 años, 11 meses
Puntos: 0
Respuesta: foreach sin repetir

Cita:
Iniciado por Hidek1 Ver Mensaje
puedes guardar en un array.. y luego usar array_unique para eliminar repeticiones y luego imprimes

Código PHP:
Ver original
  1. foreach ($xml->resultados->cotizados->articulo as $sarticulo) {
  2.   $variable[] = $sarticulo->nombre_prestatario;
  3. }
  4. echo implode("<br />", array_unique($variable));
puse lo que m dices pero no funca sigue imprimiendo los nombres repetidos hay alguna otra manera?
  #4 (permalink)  
Antiguo 22/06/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: foreach sin repetir

luego de crear el array haz un

print_r($variable);

y pegas el resultado aca para ver la estructura del array creado
asi te puedo guiar
saludos!
__________________
More about me...
~ @rhyudek1
~ Github
  #5 (permalink)  
Antiguo 22/06/2010, 10:06
(Desactivado)
 
Fecha de Ingreso: mayo-2008
Mensajes: 67
Antigüedad: 15 años, 11 meses
Puntos: 0
Respuesta: foreach sin repetir

Cita:
Iniciado por Hidek1 Ver Mensaje
luego de crear el array haz un

print_r($variable);

y pegas el resultado aca para ver la estructura del array creado
asi te puedo guiar
saludos!
Código PHP:
Array ( [0] => SimpleXMLElement Object ( [0] => ALCAZABA MAR ) [1] => SimpleXMLElement Object ( [0] => CABOGATA MAR GARDEN ) [2] => SimpleXMLElement Object ( [0] => BARCELO CABO DE GATA ) [3] => SimpleXMLElement Object ( [0] => ALCAZABA MAR ) [4] => SimpleXMLElement Object ( [0] => ALCAZABA MAR ) [5] => SimpleXMLElement Object ( [0] => ALCAZABA MAR ) [6] => SimpleXMLElement Object ( [0] => ALCAZABA MAR ) [7] => SimpleXMLElement Object ( [0] => CABOGATA MAR GARDEN ) [8] => SimpleXMLElement Object ( [0] => CABOGATA GARDEN SPA ) [9] => SimpleXMLElement Object ( [0] => CABOGATA MAR GARDEN ) [10] => SimpleXMLElement Object ( [0] => CABOGATA MAR GARDEN ) [11] => SimpleXMLElement Object ( [0] => CABO GATA PLAZA SUITE ) [12] => SimpleXMLElement Object ( [0] => CABOGATA MAR GARDEN ) [13] => SimpleXMLElement Object ( [0] => CABOGATA MAR GARDEN ) [14] => SimpleXMLElement Object ( [0] => CABO GATA PLAZA SUITE ) [15] => SimpleXMLElement Object ( [0] => CABOGATA GARDEN SPA ) [16] => SimpleXMLElement Object ( [0] => CABOGATA MAR GARDEN ) [17] => SimpleXMLElement Object ( [0] => ALCAZABA MAR ) [18] => SimpleXMLElement Object ( [0] => ALCAZABA MAR ) [19] => SimpleXMLElement Object ( [0] => CABO GATA PLAZA SUITE ) [20] => SimpleXMLElement Object ( [0] => CABOGATA MAR GARDEN ) [21] => SimpleXMLElement Object ( [0] => CABOGATA MAR GARDEN ) [22] => SimpleXMLElement Object ( [0] => BARCELO CABO DE GATA ) [23] => SimpleXMLElement Object ( [0] => ALCAZABA MAR ) [24] => SimpleXMLElement Object ( [0] => ALCAZABA MAR ) [25] => SimpleXMLElement Object ( [0] => CABO GATA PLAZA SUITE ) [26] => SimpleXMLElement Object ( [0] => CABOGATA GARDEN SPA ) [27] => SimpleXMLElement Object ( [0] => CABOGATA MAR GARDEN ) [28] => SimpleXMLElement Object ( [0] => CABOGATA MAR GARDEN ) [29] => SimpleXMLElement Object ( [0] => CABOGATA MAR GARDEN ) [30] => SimpleXMLElement Object ( [0] => BARCELO CABO DE GATA ) [31] => SimpleXMLElement Object ( [0] => CABOGATA MAR GARDEN ) [32] => SimpleXMLElement Object ( [0] => CABOGATA MAR GARDEN ) [33] => SimpleXMLElement Object ( [0] => CABOGATA GARDEN SPA ) [34] => SimpleXMLElement Object ( [0] => CABOGATA MAR GARDEN ) [35] => SimpleXMLElement Object ( [0] => CABOGATA MAR GARDEN ) [36] => SimpleXMLElement Object ( [0] => CABOGATA MAR GARDEN ) [37] => SimpleXMLElement Object ( [0] => CABOGATA MAR GARDEN ) [38] => SimpleXMLElement Object ( [0] => ZIMBALI PLAYA ) [39] => SimpleXMLElement Object ( [0] => ZIMBALI PLAYA ) [40] => SimpleXMLElement Object ( [0] => ALCAZABA MAR ) [41] => SimpleXMLElement Object ( [0] => CABO GATA PLAZA SUITE ) [42] => SimpleXMLElement Object ( [0] => ALCAZABA MAR ) [43] => SimpleXMLElement Object ( [0] => VERA PLAYA CLUB HOTEL ) [44] => SimpleXMLElement Object ( [0] => ZIMBALI PLAYA ) [45] => SimpleXMLElement Object ( [0] => BARCELO CABO DE GATA ) [46] => SimpleXMLElement Object ( [0] => CABOGATA GARDEN SPA ) [47] => SimpleXMLElement Object ( [0] => ALCAZABA MAR ) [48] => SimpleXMLElement Object ( [0] => CABO GATA PLAZA SUITE ) [49] => SimpleXMLElement Object ( [0] => BARCELO CABO DE GATA ) [50] => SimpleXMLElement Object ( [0] => ZIMBALI PLAYA ) [51] => SimpleXMLElement Object ( [0] => CABOGATA GARDEN SPA ) [52] => SimpleXMLElement Object ( [0] => ZIMBALI PLAYA ) [53] => SimpleXMLElement Object ( [0] => ZIMBALI PLAYA ) [54] => SimpleXMLElement Object ( [0] => BARCELO CABO DE GATA ) [55] => SimpleXMLElement Object ( [0] => ZIMBALI PLAYA ) [56] => SimpleXMLElement Object ( [0] => VERA PLAYA CLUB HOTEL ) [57] => SimpleXMLElement Object ( [0] => CABOGATA GARDEN SPA ) [58] => SimpleXMLElement Object ( [0] => BARCELO CABO DE GATA ) [59] => SimpleXMLElement Object ( [0] => VERA PLAYA CLUB HOTEL ) [60] => SimpleXMLElement Object ( [0] => BARCELO CABO DE GATA ) [61] => SimpleXMLElement Object ( [0] => ZIMBALI PLAYA ) [62] => SimpleXMLElement Object ( [0] => ZIMBALI PLAYA ) [63] => SimpleXMLElement Object ( [0] => ZIMBALI PLAYA ) [64] => SimpleXMLElement Object ( [0] => CABOGATA GARDEN SPA ) [65] => SimpleXMLElement Object ( [0] => CABOGATA MAR GARDEN ) [66] => SimpleXMLElement Object ( [0] => VERA PLAYA CLUB HOTEL ) [67] => SimpleXMLElement Object ( [0] => VERA PLAYA CLUB HOTEL ) [68] => SimpleXMLElement Object ( [0] => BARCELO CABO DE GATA ) [69] => SimpleXMLElement Object ( [0] => VERA PLAYA CLUB HOTEL ) [70] => SimpleXMLElement Object ( [0] => ZIMBALI PLAYA ) [71] => SimpleXMLElement Object ( [0] => ZIMBALI PLAYA ) [72] => SimpleXMLElement Object ( [0] => CABOGATA GARDEN SPA ) [73] => SimpleXMLElement Object ( [0] => CABOGATA MAR GARDEN ) [74] => SimpleXMLElement Object ( [0] => VERA PLAYA CLUB HOTEL ) [75] => SimpleXMLElement Object ( [0] => BARCELO CABO DE GATA ) [76] => SimpleXMLElement Object ( [0] => VERA PLAYA CLUB HOTEL ) ) 
si te fijas los nombres se repiten quiero que muestren los nombres pero sin repetir

Última edición por sopaetonto; 22/06/2010 a las 10:07 Razón: mas claridad
  #6 (permalink)  
Antiguo 22/06/2010, 10:12
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Tokyo - Japan !
Mensajes: 3.867
Antigüedad: 14 años, 6 meses
Puntos: 334
Respuesta: foreach sin repetir

pero ahi siguen estando los valores dentro de un objeto.. tienes que dejar un array simple para que funcione

intentalo asi
Código PHP:
Ver original
  1. foreach ($xml->resultados->cotizados->articulo as $sarticulo) {
  2.   $variable[] = $sarticulo->nombre_prestatario[0];
  3. }
  4. echo implode("<br />", array_unique($variable));

o de la forma que puedas... la idea es que el print_r te de como resultado algo como
Array ( [0] => ALCAZABA MAR [1] => BARCELO CABO DE GATA .. etc..
__________________
More about me...
~ @rhyudek1
~ Github
  #7 (permalink)  
Antiguo 22/06/2010, 10:20
(Desactivado)
 
Fecha de Ingreso: mayo-2008
Mensajes: 67
Antigüedad: 15 años, 11 meses
Puntos: 0
Respuesta: foreach sin repetir

Cita:
Iniciado por Hidek1 Ver Mensaje
pero ahi siguen estando los valores dentro de un objeto.. tienes que dejar un array simple para que funcione

intentalo asi
Código PHP:
Ver original
  1. foreach ($xml->resultados->cotizados->articulo as $sarticulo) {
  2.   $variable[] = $sarticulo->nombre_prestatario[0];
  3. }
  4. echo implode("<br />", array_unique($variable));

o de la forma que puedas... la idea es que el print_r te de como resultado algo como
Array ( [0] => ALCAZABA MAR [1] => BARCELO CABO DE GATA .. etc..
funciono!!!!! gracias deveras sos un genio era lo unico que me faltaba espero postear tambien en ayuda de algun colega mas adelante pero ahora me ayudo mucho este foro deveras muchas gracias
  #8 (permalink)  
Antiguo 22/06/2010, 10:22
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Tokyo - Japan !
Mensajes: 3.867
Antigüedad: 14 años, 6 meses
Puntos: 334
Respuesta: foreach sin repetir

:D que bien..
suerte con tu proyecto!
__________________
More about me...
~ @rhyudek1
~ Github
  #9 (permalink)  
Antiguo 23/06/2010, 08:16
(Desactivado)
 
Fecha de Ingreso: mayo-2008
Mensajes: 67
Antigüedad: 15 años, 11 meses
Puntos: 0
Foreach sin repetir pero ala vez repetido

Tengo el siguiente codigo PHP

Código PHP:
 foreach ($xml->resultados->cotizados->articulo as $sarticulo) {
      
 
$articulo_nombre $sarticulo->articulo_nombre;
 
        
$variable_nom_pres[] = '<tr><td colspan="2" valign="top" ><form name="infotel" action="'.site_url('solole_dispo').'" method="post"><input name="nombre_prest" id="nombre_prest" type="hidden" value="'.$sarticulo->nombre_prestatario[0].'" /><input style="background-color:#FFFFFF; border:hidden; font-family:Trebuchet MS; font-weight:bold; color:#993300" type="submit" value="'.$sarticulo->nombre_prestatario[0].'" /></form></td></tr>'.'<tr><td valign="top"><img src="'.$sarticulo->foto_prestatario[0].'" width="150" /></td><td valign="top">'.$sarticulo->descripcion_prestatario[0].'</td></tr>'.'<tr><td>'.$articulo_nombre.'</td><td></td></tr>';
  
      }
$nom_pres =array_unique($variable_nom_pres);
      echo 
implode($nom_pres);

En el cual la variable $articulo_nombre no es array unique pero quiero que este dentro del array unique que ya tengo.
  #10 (permalink)  
Antiguo 23/06/2010, 08:17
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Tokyo - Japan !
Mensajes: 3.867
Antigüedad: 14 años, 6 meses
Puntos: 334
Respuesta: Foreach sin repetir pero ala vez repetido

no se entiende
__________________
More about me...
~ @rhyudek1
~ Github
  #11 (permalink)  
Antiguo 23/06/2010, 08:26
(Desactivado)
 
Fecha de Ingreso: mayo-2008
Mensajes: 67
Antigüedad: 15 años, 11 meses
Puntos: 0
Respuesta: Foreach sin repetir pero ala vez repetido

Cita:
Iniciado por Hidek1 Ver Mensaje
no se entiende
Hola Hideck ayer me ayudaste con este tema recuerdas? el arry_unique ahora tengo otro problema quiero que dentro de esaos valores que ya tengo listar otros valores es decir el array unique usarlo solo en los valores que te indico pero el nombre del articulo sin arry unique normal como siempre pero todo que gire entorno al nombre del articulo


foreach ($xml->resultados->cotizados->articulo as $sarticulo) {

$articulo_nombre = $sarticulo->nombre_articulo;

$variable_nom_pres[] = '<tr><td colspan="2" valign="top" >
<form name="infotel" action="'.site_url('solole_dispo').'" method="post"><input name="nombre_prest" id="nombre_prest" type="hidden" value="'.$sarticulo->nombre_prestatario[0].'" /><input style="background-color:#FFFFFF; border:hidden; font-family:Trebuchet MS; font-weight:bold; color:#993300" type="submit" value="'.$sarticulo->nombre_prestatario[0].'" /></form></td></tr>'.'<tr><td valign="top"><img src="'.$sarticulo->foto_prestatario[0].'" width="150" /></td><td valign="top">'.$sarticulo->descripcion_prestatario[0].'</td></tr>'.'<tr><td>'.$articulo_nombre.'</td><td></td></tr>';

}
$nom_pres =array_unique($variable_nom_pres);
echo implode($nom_pres);
}
  #12 (permalink)  
Antiguo 23/06/2010, 08:35
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Tokyo - Japan !
Mensajes: 3.867
Antigüedad: 14 años, 6 meses
Puntos: 334
Respuesta: Foreach sin repetir pero ala vez repetido

haber en realidad no entiendo bien tu explicación.. aparte de que en el código veo errores como
Código PHP:
Ver original
  1. echo implode($nom_pres); // fíjate en la documentación de PHP para que veas como se usa implode()
ahora.. con lo que entendí podrías usar el nombre del articulo como llave del array
Código PHP:
Ver original
  1. $variable_nom_pres[$articulo_nombre] = '<tr><td colspan="2" valign="top" >...
así se agruparían los repetidos por el nombre del articulo..
ahora si no entendí bien vuelve a explicar :P

saludos!
__________________
More about me...
~ @rhyudek1
~ Github
  #13 (permalink)  
Antiguo 23/06/2010, 08:40
(Desactivado)
 
Fecha de Ingreso: mayo-2008
Mensajes: 67
Antigüedad: 15 años, 11 meses
Puntos: 0
Cita:
Iniciado por Hidek1 Ver Mensaje
haber en realidad no entiendo bien tu explicación.. aparte de que en el código veo errores como
Código PHP:
Ver original
  1. echo implode($nom_pres); // fíjate en la documentación de PHP para que veas como se usa implode()
ahora.. con lo que entendí podrías usar el nombre del articulo como llave del array
Código PHP:
Ver original
  1. $variable_nom_pres[$articulo_nombre] = '<tr><td colspan="2" valign="top" >...
así se agruparían los repetidos por el nombre del articulo..
ahora si no entendí bien vuelve a explicar :P

saludos!
Diculpa señor karma pero me podrias explicar mas el tema de la agrupacion por nombre por favor y te doy karma jeje

para que tengas mas lucides lo que tengo es un sistema de peticion de hoteles y sus tipo de habiactacion en cada hotel los hoteles nombre , foto y dewscripcion ya los tengo con el array unique pero los tipos de habitacion tiene que ir en cada hotel ya grupando podria funcionar pero nesesito mas claridad con eso si la capto masomenos pero algun ejemplito mas me ayudaria.

hidek1 puedes darme tu msn para poder charlar con mas calma y conversar sobre mi proyecto?

Última edición por GatorV; 23/06/2010 a las 09:30
  #14 (permalink)  
Antiguo 23/06/2010, 09:27
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Tokyo - Japan !
Mensajes: 3.867
Antigüedad: 14 años, 6 meses
Puntos: 334
Respuesta: Foreach sin repetir pero ala vez repetido

esta en mi perfil.. de todas formas solo contesto dudas por el foro.. ya que mi trabajo no me da el tiempo como para tomarle atención al emesene..

el tema de la agrupación es simplemente tomar los datos...
por ejemplo de una consulta SQL
Código sql:
Ver original
  1. +-------+--------------+
  2. | hotel | habitacion   |
  3. +-------+--------------+
  4. | foo   |  uno         |
  5. | foo   |  dos         |
  6. | bar   |  tres        |
  7. | bar   |  cuatro      |
  8. +-------+--------------+

entonces luego si seleccionas todo y quieres agruparlo por el nombre del hotel lo usas como llave en el array

Código PHP:
Ver original
  1. while($registro = mysql_fetch_assoc($consulta)){
  2.   $matriz[$registro["hotel"]][] = $registro["habitacion"];
  3. }

asi te quedaria un array algo como
Código PHP:
Ver original
  1. $matriz = array("foo" => array ("uno", "dos"), "bar" => array("tres", "cuatro"));

es eso mas que nada.. saludos!
__________________
More about me...
~ @rhyudek1
~ Github
  #15 (permalink)  
Antiguo 23/06/2010, 09:51
(Desactivado)
 
Fecha de Ingreso: mayo-2008
Mensajes: 67
Antigüedad: 15 años, 11 meses
Puntos: 0
Respuesta: Foreach sin repetir pero ala vez repetido

Cita:
Iniciado por sopaetonto Ver Mensaje
Diculpa señor karma pero me podrias explicar mas el tema de la agrupacion por nombre por favor y te doy karma jeje

para que tengas mas lucides lo que tengo es un sistema de peticion de hoteles y sus tipo de habiactacion en cada hotel los hoteles nombre , foto y dewscripcion ya los tengo con el array unique pero los tipos de habitacion tiene que ir en cada hotel ya grupando podria funcionar pero nesesito mas claridad con eso si la capto masomenos pero algun ejemplito mas me ayudaria.

hidek1 puedes darme tu msn para poder charlar con mas calma y conversar sobre mi proyecto?
Cita:
Iniciado por Hidek1 Ver Mensaje
esta en mi perfil.. de todas formas solo contesto dudas por el foro.. ya que mi trabajo no me da el tiempo como para tomarle atención al emesene..

el tema de la agrupación es simplemente tomar los datos...
por ejemplo de una consulta SQL
Código sql:
Ver original
  1. +-------+--------------+
  2. | hotel | habitacion   |
  3. +-------+--------------+
  4. | foo   |  uno         |
  5. | foo   |  dos         |
  6. | bar   |  tres        |
  7. | bar   |  cuatro      |
  8. +-------+--------------+

entonces luego si seleccionas todo y quieres agruparlo por el nombre del hotel lo usas como llave en el array

Código PHP:
Ver original
  1. while($registro = mysql_fetch_assoc($consulta)){
  2.   $matriz[$registro["hotel"]][] = $registro["habitacion"];
  3. }

asi te quedaria un array algo como
Código PHP:
Ver original
  1. $matriz = array("foo" => array ("uno", "dos"), "bar" => array("tres", "cuatro"));

es eso mas que nada.. saludos!
La ultima que te piedo este ejemplo ultimo que me das me lo puedes dar sin while con foreach?
  #16 (permalink)  
Antiguo 23/06/2010, 11:08
(Desactivado)
 
Fecha de Ingreso: mayo-2008
Mensajes: 67
Antigüedad: 15 años, 11 meses
Puntos: 0
Respuesta: Foreach sin repetir pero ala vez repetido

foreach ($xml->resultados->cotizados->articulo as $sarticulo) {

$matriz[] = $sarticulo->id_prestatario[0];
$nombre_articulo = $sarticulo->nombre_articulo;

}
$nom_pres = array_unique($matriz);

foreach ($nom_pres as $sarticulo2) {

$nombre_articulo = $sarticulo2->nombre_articulo;

echo $nombre_articulo;
}

que estoy haciendo mal? quiero mostrar de acuerdo a la matris los resultados delos artiiculos dentro de la matris
  #17 (permalink)  
Antiguo 23/06/2010, 12:14
(Desactivado)
 
Fecha de Ingreso: mayo-2008
Mensajes: 67
Antigüedad: 15 años, 11 meses
Puntos: 0
como harias esto?

tengo el siguiente xml


<?xml version="1.0"?><reserva accion="resultado"> <resultados> <cotizados> - <articulo ocupacion="h1">
<id_articulo>2452</id_articulo>
<nombre_articulo>HAB. IND. ALOJAMIENTO Y DESAYUNO</nombre_articulo>
<id_resultado>169211</id_resultado>
<central_reservas />
<descripcion />
<id_zona>4</id_zona>
<nombre_zona>Costa de Almería</nombre_zona>
<provincia>ALMERÍA</provincia>
<poblacion>RETAMAR</poblacion>
<longitud>0.000000</longitud>
<latitud>0.000000</latitud>
<id_prestatario>21885</id_prestatario>
<nombre_prestatario>CABOGATA MAR GARDEN</nombre_prestatario>
<direccion_prestatario>EL TOYO-C/ CASABLANCA, S/N</direccion_prestatario>
<cp_prestatario />
<provincia_prestatario>ALMERÍA</provincia_prestatario>
<categoria>4</categoria>
<cotizacion>60.86</cotizacion>
<disponible>1</disponible>
<foto_prestatario>http://www.miweb.com/dominios/quteimporta/fotos/21885_1.jpg</foto_prestatario>
<descripcion_prestatario>el indalia garden hotel club and spa 4 en almería es un excepcional establecimiento situado junto a la playa de el toyo, a 15 km de la ciudad de almería y a 7 km de su aeropuerto en este hotel, que abrió sus puertas el día 19julio 2006, disfrutará del lujo, el confort y los más refinados servicios y atenciones que convertirán cada día de vacaciones en una inolvidable jornada de relax y placer el hotel cuenta con todo tipo de instalaciones y servicios, como recepción, salón, bar-salón, restaurante-buffet y cafetería climatizados así como el agradable bar-piscina</descripcion_prestatario>
- <suplementos>
- <suplemento regimen="1">
<id_suplemento tipo="obligatorio">14545</id_suplemento>
<nombre_suplemento>Alojamiento y Desayuno</nombre_suplemento>
<suplemento_regimen_abreviado>AD</suplemento_regimen_abreviado>
<descripcion />
</suplemento>
</suplementos>
<tipo_categoria>hotel</tipo_categoria>
</articulo>
- <articulo ocupacion="h1">
<id_articulo>2452</id_articulo>
<nombre_articulo>OFERTA DIAS G IND MP</nombre_articulo>
<id_resultado>169210</id_resultado>
<central_reservas />
<descripcion />
<id_zona>4</id_zona>
<nombre_zona>Costa de Almería</nombre_zona>
<provincia>ALMERÍA</provincia>
<poblacion>RETAMAR</poblacion>
<longitud>0.000000</longitud>
<latitud>0.000000</latitud>
<id_prestatario>21885</id_prestatario>
<nombre_prestatario>CABOGATA MAR GARDEN</nombre_prestatario>
<direccion_prestatario>EL TOYO-C/ CASABLANCA, S/N</direccion_prestatario>
<cp_prestatario />
<provincia_prestatario>ALMERÍA</provincia_prestatario>
<categoria>4</categoria>
<cotizacion>60.86</cotizacion>
<disponible>1</disponible>
<foto_prestatario>http://www.miweb.com/dominios/quteimporta/fotos/21885_1.jpg</foto_prestatario>
<descripcion_prestatario>el indalia garden hotel club and spa 4 en almería es un excepcional establecimiento situado junto a la playa de el toyo, a 15 km de la ciudad de almería y a 7 km de su aeropuerto en este hotel, que abrió sus puertas el día 19julio 2006, disfrutará del lujo, el confort y los más refinados servicios y atenciones que convertirán cada día de vacaciones en una inolvidable jornada de relax y placer el hotel cuenta con todo tipo de instalaciones y servicios, como recepción, salón, bar-salón, restaurante-buffet y cafetería climatizados así como el agradable bar-piscina</descripcion_prestatario>
- <suplementos>
- <suplemento regimen="1">
<id_suplemento tipo="obligatorio">14542</id_suplemento>
<nombre_suplemento>Media pensión</nombre_suplemento>
<suplemento_regimen_abreviado>MP</suplemento_regimen_abreviado>
<descripcion />
</suplemento>
</suplementos>
<tipo_categoria>hotel</tipo_categoria>
</articulo> </resultados></reserva>

como se haria para mostrar los tipos de habitacion(nombre_articulo) ya que el hotel(nombre_prestatario) se repite lo que quiero es mostrar los hoteles y los tipos de habitaciones sin que se repita aqui el codigo php que estoy usando

Código PHP:
$xml = new SimpleXMLElement($xml_response); //Simple XML is available from php5
 
    
      
foreach ($xml->resultados->cotizados->articulo as $sarticulo) {
 
        
$variable_nom_pres[] = '<tr><td colspan="2" valign="top" ><form name="infotel" action="'.site_url('solole_dispo').'" method="post"><input name="nombre_prest" id="nombre_prest" type="hidden" value="'.$sarticulo->nombre_prestatario[0].'" /><input style="background-color:#FFFFFF; border:hidden; font-family:Trebuchet MS; font-weight:bold; color:#993300" type="submit" value="'.$sarticulo->nombre_prestatario[0].'" /></form></td></tr>'.'<tr><td valign="top"><img src="'.$sarticulo->foto_prestatario[0].'" width="150" /></td><td valign="top">'.$sarticulo->descripcion_prestatario[0].'</td></tr>';
  
      }
$nom_pres =array_unique($variable_nom_pres);
      echo 
implode($nom_pres); 
  #18 (permalink)  
Antiguo 23/06/2010, 14:08
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Respuesta: foreach sin repetir

Temas unidos, por favor NO dupliques temas.

Etiquetas: foreach, repetir
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 22:10.