Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] ayudita con un array de paises para mostrar bandera

Estas en el tema de ayudita con un array de paises para mostrar bandera en el foro de PHP en Foros del Web. Hola :) ! les cuento mi situacion, tengo una web donde quisiera mostrar , en el perfil de cada usuario la banderita y el codigo ...
  #1 (permalink)  
Antiguo 21/05/2015, 18:55
 
Fecha de Ingreso: mayo-2015
Mensajes: 14
Antigüedad: 8 años, 10 meses
Puntos: 0
ayudita con un array de paises para mostrar bandera

Hola :) ! les cuento mi situacion, tengo una web donde quisiera mostrar , en el perfil de cada usuario la banderita y el codigo del pais dependiendo del valor de term_id que me de la base de datos sql.

entonces hice este array


$cssflags = array(
array('term_id' => '103','name' => 'Afghanistan','short' => 'AF','css_flag' => 'flags/af.png'),
array('term_id' => '104','name' => 'Albania','short' => 'AL','css_flag' => 'flags/al.png'),
array('term_id' => '105','name' => 'Algeria','short' => 'DZ','css_flag' => 'flags/dz.png'),
array('term_id' => '106','name' => 'Andorra','short' => 'AD','css_flag' => 'flags/ad.png'),
array('term_id' => '107','name' => 'Angola','short' => 'AO','css_flag' => 'flags/ao.png'),
array('term_id' => '109','name' => 'Argentina','short' => 'AR','css_flag' => 'flags/ar.png'),
array('term_id' => '110','name' => 'Armenia','short' => 'AM','css_flag' => 'flags/am.png'),
array('term_id' => '111','name' => 'Australia','short' => 'AU','css_flag' => 'flags/au.png'),
array('term_id' => '112','name' => 'Austria','short' => 'AT','css_flag' => 'flags/at.png'),
array('term_id' => '113','name' => 'Azerbaijan','short' => 'AZ','css_flag' => 'flags/az.png'),

sigue asi con todos los paises...


espero que se haya entendido, el term_id y su valor esta en la base de datos y para cada valor de term_id corresponde un pais

quisiera que segun el valor de term_id me muestre el valor de (short) y el valor de (css_flag)

bueno, agradezco desde ya si me pueden ayudar, si a alguien le interesa el array completo lo comparto con mucho gusto
  #2 (permalink)  
Antiguo 22/05/2015, 01:50
 
Fecha de Ingreso: septiembre-2014
Mensajes: 180
Antigüedad: 9 años, 7 meses
Puntos: 14
Respuesta: ayudita con un array de paises para mostrar bandera

Suponiendo que term_id es un valor único, podrías usarlo como índice de forma que tengas algo como:

$cssflags = array(
[103] = array('name' => 'Afghanistan','short' => 'AF','css_flag' => 'flags/af.png'),
[104] = array('name' => 'Albania','short' => 'AL','css_flag' => 'flags/al.png'),

....

);

De esta forma puedes obtener los valores consultando el array así:

$valores = $cssflags[term_id];

Y luego los valores de short y css_flag:

$short = $valores["short"];
$flag = $valores["css_flag"];

Te lo he puesto un poco en pseudocódigo, pero creo que se entiende la idea ;)
__________________
Unelink.es - VPS, servidores dedicados, hosting y dominios. 10 años a tu lado.
  #3 (permalink)  
Antiguo 22/05/2015, 07:10
 
Fecha de Ingreso: mayo-2015
Mensajes: 14
Antigüedad: 8 años, 10 meses
Puntos: 0
Respuesta: ayudita con un array de paises para mostrar bandera

Gracias Json por tu respuesta,

mira, logre hacer algo pero solo muestra lo que quiero en pantalla cuando uso los valores directamente de esta manera

if ($_POST['term_id'] == "200" ) {
echo $cssflags['200']["short"];} // ahi me muestra en pantalla el valor de short que corresponde a 200

pero cuando quiero aplicar los valores como me explicaste no me muestra nada


if ($_POST['term_id'] == $valores) {
echo $short = $valores["short"]; }


le ves algun error?


soy bastante principiante sorry
  #4 (permalink)  
Antiguo 24/05/2015, 19:42
 
Fecha de Ingreso: mayo-2015
Mensajes: 14
Antigüedad: 8 años, 10 meses
Puntos: 0
Respuesta: ayudita con un array de paises para mostrar bandera

hay ya lo arregle jeje, mil gracias me sirvio muhisimo la ayuda
  #5 (permalink)  
Antiguo 25/05/2015, 01:56
 
Fecha de Ingreso: septiembre-2014
Mensajes: 180
Antigüedad: 9 años, 7 meses
Puntos: 14
Respuesta: ayudita con un array de paises para mostrar bandera

De nada! El error de lo último que me comentabas lo tenías en esta comprobación:

if ($_POST['term_id'] == $valores)

$valores es un array y el valor de $_POST es número por lo que esa comparación nunca iba a cumplirse jeje
__________________
Unelink.es - VPS, servidores dedicados, hosting y dominios. 10 años a tu lado.

Etiquetas: sql
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 08:38.