Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Hallar el valor de un campo por posicion en array

Estas en el tema de Hallar el valor de un campo por posicion en array en el foro de PHP en Foros del Web. Hola gente, espero esten bien. Bueno, comenzare diciendo que nunca me he llevado bien con los array, me cuesta mucho comprenderlos y ponerlos en practica ...
  #1 (permalink)  
Antiguo 10/11/2015, 20:12
 
Fecha de Ingreso: agosto-2015
Ubicación: Rosario - Argentina
Mensajes: 424
Antigüedad: 9 años, 3 meses
Puntos: 12
Hallar el valor de un campo por posicion en array

Hola gente, espero esten bien.

Bueno, comenzare diciendo que nunca me he llevado bien con los array, me cuesta mucho comprenderlos y ponerlos en practica utilizando DB.
Supongo que es hora de ponerme en practica con estos arrays para poder ahorrar mucho mas codigo a la hora de programar.

Utilizo PHP.

Bueno, veran, tengo los siguientes arrays:
Código PHP:
$razas = array("","<img src=1-","<img src=2-","<img src=3-","<img src=4-","<img src=5-","<img src=6-","<img src=7-","<img src=8-","","<img src=10-","<img src=11-");
    
$clases = array("","<img src=1.png>","<img src=2.png>","","<img src=3.png>");
    
    
$sexos = array("0.png>","1.png>"); 
Yo en la DB tengo una tabla con tres campos "raza", "clase" y "sexo"
Yo creo una linea asi:
Código SQL:
Ver original
  1. INSERT INTO pjs(raza,clase,sexo) VALUES(4,6,1);
Bueno, ahora lo que necesito saber es.. como hacer para consultar los resultados de la tabla "pjs" y que cada columna concuerde con el nombre de cada array...
Y como lograr que si el resultado de raza es 4 entonces se muestre lo que hay en la posicion 4 del array "razas".

pero que tambien se conbinen la raza y sexo... entonces asi aparecera la img de raza femenina o raza masculina ¿me explico?

espero puedan ayudarme y gracias de antemano!
  #2 (permalink)  
Antiguo 10/11/2015, 20:18
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años, 7 meses
Puntos: 2534
Respuesta: Hallar el valor de un campo por posicion en array

Pues yo no entendí nada, no veo la relación entre los arrays que muestras y los datos que tengas en tu base de datos.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 10/11/2015, 23:38
Avatar de mortiprogramador
Colaborador
 
Fecha de Ingreso: septiembre-2009
Ubicación: mortuoria
Mensajes: 3.805
Antigüedad: 15 años, 2 meses
Puntos: 214
Respuesta: Hallar el valor de un campo por posicion en array

Saludo
Uhm, creo que no te explicaste con claridad.

Sin embargo, intentare desenredar eso.

Revisando el query
Código SQL:
Ver original
  1. INSERT INTO pjs(raza,clase,sexo) VALUES(4,6,1);

Entiendo que esos valores se quieren usar para mostrar luego
las imagenes que tiene cada array (creo)

Código PHP:
Ver original
  1. $razas = array("","<img src=1-","<img src=2-","<img src=3-","<img src=4-","<img src=5-","<img src=6-","<img src=7-","<img src=8-","","<img src=10-","<img src=11-");
  2.    
  3. $clases = array("","<img src=1.png>","<img src=2.png>","","<img src=3.png>");
  4.    
  5. $sexos = array("0.png>","1.png>");

Sin embargo, me parece que se están usando sin necesidad esos arrays.
Me explico.

Sí ya se tienen los ids en la tabla, imagino que luego se hará una consulta
para traer los mismos y poder mostrar las imagenes correspondientes,
en cuyo caso se pueden manejar 3 img (que sustituirián a los arrays),
y simplemente se le agrega el id en el src.

Ej (teniendo en cuenta el insert)

Código PHP:
Ver original
  1. Raza <img src='<?php echo $idraza;?>-.png'> //4-.png
  2. Clase <img src='<?php echo $idclase;?>.png'> //6.png
  3. Sexo <img src='<?php echo $idsexo;?>.png'> //1.png


¿Es eso?

__________________
"Si consigues ser algo más que un hombre, si te entregas a un ideal, si nadie puede detenerte, te conviertes en algo muy diferente."
Visita piggypon.com
  #4 (permalink)  
Antiguo 11/11/2015, 15:16
 
Fecha de Ingreso: agosto-2015
Ubicación: Rosario - Argentina
Mensajes: 424
Antigüedad: 9 años, 3 meses
Puntos: 12
Respuesta: Hallar el valor de un campo por posicion en array

Cita:
Iniciado por mortiprogramador Ver Mensaje
[COLOR=Purple]Saludo
Uhm, creo que no te explicaste con claridad.

Sin embargo, intentare desenredar eso.
La verdad no he entendido el punto xD..

Pero lo hare facil.

Yo quiero reducir el codigo por utilizar IF utilizando Arrays:

Mira... dare un ejemplo:
Cada pjs tiene una raza, clase y sexo.

Pondre un ejemplo...

Raza "Muerto" = 1
Clase "guerrero" = 4
Sexo "masculino" = 0

En la DB no muestra nombres... solo numeros..
entonces si yo quiero plasmar estas tres cosas de todos los pjs creado en el juego se veria algo asi:

1 4 0
2 1 1

y asi...., lo que yo busco es que el numero de "raza" (por ejemplo) se enlase con array "$raza" y ese numero que supongamos es "1" equivale a la posicion 1 del array por tanto se mostraria la imagen pertinente de dicha raza...

yo lo he logrado usando esto:

Código PHP:
$raza=$linea['race'];
            
$clase=$linea['class'];
            
$sexo=$linea['gender'];
            if(
$raza==&& $sexo==0){
            
$raza="<img src='images/icon/raza/1-0.gif' width='20px'>";
        }else if(
$raza==&& $sexo==1){
            
$raza="<img src='images/icon/raza/1-1.gif' width='20px'>";
        }else if(
$raza==&& $sexo==0){
            
$raza="<img src='images/icon/raza/2-0.gif' width='20px'>";
        }else if(
$raza==&& $sexo==1){
            
$raza="<img src='images/icon/raza/2-1.gif' width='20px'>";
        }else if(
$raza==&& $sexo==0){
            
$raza="<img src='images/icon/raza/3-0.gif' width='20px'>";
        }else if(
$raza==&& $sexo==1){
            
$raza="<img src='images/icon/raza/3-1.gif' width='20px'>";
        }else if(
$raza==&& $sexo==0){
            
$raza="<img src='images/icon/raza/4-0.gif' width='20px'>";
        }else if(
$raza==&& $sexo==1){
            
$raza="<img src='images/icon/raza/4-1.gif' width='20px'>";
        }else if(
$raza==&& $sexo==0){
            
$raza="<img src='images/icon/raza/5-0.gif' width='20px'>";
        }else if(
$raza==&& $sexo==1){
            
$raza="<img src='images/icon/raza/5-1.gif' width='20px'>";
        }else if(
$raza==&& $sexo==0){
            
$raza="<img src='images/icon/raza/6-0.gif' width='20px'>";
        }else if(
$raza==&& $sexo==1){
            
$raza="<img src='images/icon/raza/6-1.gif' width='20px'>";
        }else if(
$raza==&& $sexo==0){
            
$raza="<img src='images/icon/raza/7-0.gif' width='20px'>";
        }else if(
$raza==&& $sexo==1){
            
$raza="<img src='images/icon/raza/7-1.gif' width='20px'>";
        }else if(
$raza==&& $sexo==0){
            
$raza="<img src='images/icon/raza/8-0.gif' width='20px'>";
        }else if(
$raza==&& $sexo==1){
            
$raza="<img src='images/icon/raza/8-1.gif' width='20px'>";
        }else if(
$raza==&& $sexo==0){
            
$raza="<img src='images/icon/raza/9-0.gif' width='20px'>";
        }else if(
$raza==&& $sexo==1){
            
$raza="<img src='images/icon/raza/9-1.gif' width='20px'>";
        }else if(
$raza==10 && $sexo==0){
            
$raza="<img src='images/icon/raza/10-0.gif' width='20px'>";
        }else if(
$raza==10 && $sexo==1){
            
$raza="<img src='images/icon/raza/10-1.gif' width='20px'>";
        }else if(
$raza==11 && $sexo==0){
            
$raza="<img src='images/icon/raza/11-0.gif' width='20px'>";
        }else if(
$raza==11 && $sexo==1){
            
$raza="<img src='images/icon/raza/11-1.gif' width='20px'>";
        }if(
$clase==1){
            
$clase="<img src='images/icon/clase/1.gif' width='14px'>";
        }else if(
$clase==2){
            
$clase="<img src='images/icon/clase/2.gif' width='20px'>";
        }else if(
$clase==3){
            
$clase="<img src='images/icon/clase/3.gif' width='20px'>";
        }else if(
$clase==4){
            
$clase="<img src='images/icon/clase/4.gif' width='20px'>";
        }else if(
$clase==5){
            
$clase="<img src='images/icon/clase/5.gif' width='20px'>";
        }else if(
$clase==6){
            
$clase="<img src='images/icon/clase/6.gif' width='20px'>";
        }else if(
$clase==7){
            
$clase="<img src='images/icon/clase/7.gif' width='20px'>";
        }else if(
$clase==8){
            
$clase="<img src='images/icon/clase/8.gif' width='20px'>";
        }else if(
$clase==9){
            
$clase="<img src='images/icon/clase/9.gif' width='20px'>";
        }else if(
$clase==11){
            
$clase="<img src='images/icon/clase/11.gif' width='20px'>";
        } 
Esto funciona de lujo, ¿pero que pasa?.
que quiero aprender a utilizar arrays para evitar colocar tanto codigo de IFS

Espero me haya explicado bien.

saludos!
  #5 (permalink)  
Antiguo 11/11/2015, 17:57
Avatar de mortiprogramador
Colaborador
 
Fecha de Ingreso: septiembre-2009
Ubicación: mortuoria
Mensajes: 3.805
Antigüedad: 15 años, 2 meses
Puntos: 214
Respuesta: Hallar el valor de un campo por posicion en array

Saludo
Pues sì lees con calma mi post anterior, veràs que no es necesario
usar ni if, ni array para lo que se quiere.

¿Por qué?

Pues porque ya se tienen los ids necesarios.

En cuyo caso, un ej

Código PHP:
Ver original
  1. $raza=$linea['race'];
  2. $clase=$linea['class'];
  3. $sexo=$linea['gender'];
  4. $raza = "<img src='images/icon/raza/'.<?php echo $raza;?>.'-'.<?php echo $sexo;?>.'.gif' width='20px'>";
  5. $clase="<img src='images/icon/clase/'.<?php echo $clase;?>.'.gif' width='20px'>";

Con eso solamente, ya se dibuja lo que se quiere.
__________________
"Si consigues ser algo más que un hombre, si te entregas a un ideal, si nadie puede detenerte, te conviertes en algo muy diferente."
Visita piggypon.com

Etiquetas: campo, hallar, posicion, tabla, valor
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 09:43.