Foros del Web » Programando para Internet » PHP »

¿Esto es demasiado?

Estas en el tema de ¿Esto es demasiado? en el foro de PHP en Foros del Web. Hola, me gustaria saber si los siguientes querys y operaciones consumen mucho: Código PHP: <?php      //OBTENEMOS DATOS NECESARIOS      $leer_unidad1_atributos =  mysql_query ( "SELECT unidad1, unidad1_tropas FROM villa_ejercito                                                                     WHERE id='" . ...
  #1 (permalink)  
Antiguo 21/08/2007, 08:48
 
Fecha de Ingreso: septiembre-2005
Ubicación: Valencia
Mensajes: 738
Antigüedad: 14 años, 5 meses
Puntos: 5
Información ¿Esto es demasiado?

Hola, me gustaria saber si los siguientes querys y operaciones consumen mucho:
Código PHP:
<?php
    
//OBTENEMOS DATOS NECESARIOS
    
$leer_unidad1_atributosmysql_query("SELECT unidad1, unidad1_tropas FROM villa_ejercito
                                                                    WHERE id='"
.$_COOKIE["juego_jugador_id"]."'");
    
$leer_unidad2_atributosmysql_query("SELECT unidad2, unidad2_tropas FROM villa_ejercito
                                                                    WHERE id='"
.$_COOKIE["juego_jugador_id"]."'");
    
$leer_unidad3_atributosmysql_query("SELECT unidad3, unidad3_tropas FROM villa_ejercito
                                                                    WHERE id='"
.$_COOKIE["juego_jugador_id"]."'");
    
$leer_unidad4_atributosmysql_query("SELECT unidad4, unidad4_tropas FROM villa_ejercito
                                                                    WHERE id='"
.$_COOKIE["juego_jugador_id"]."'");
    
//Unidad1
    
$leer_unidad1_defensa1mysql_query("SELECT * FROM objeto INNER JOIN villa_ejercito 
                                                                            ON objeto.id= villa_ejercito.unidad1_escudo
                                                                            WHERE villa_ejercito.id='"
.$_COOKIE["juego_jugador_id"]."'");
    
$leer_unidad1_defensa2mysql_query("SELECT * FROM objeto INNER JOIN villa_ejercito 
                                                                            ON objeto.id= villa_ejercito.unidad1_yelmo
                                                                            WHERE villa_ejercito.id='"
.$_COOKIE["juego_jugador_id"]."'");
    
$leer_unidad1_defensa3mysql_query("SELECT * FROM objeto INNER JOIN villa_ejercito 
                                                                            ON objeto.id= villa_ejercito.unidad1_armadura
                                                                            WHERE villa_ejercito.id='"
.$_COOKIE["juego_jugador_id"]."'");
    
$leer_unidad1_ataquemysql_query("SELECT * FROM villa_ejercito INNER JOIN objeto 
                                                                            ON villa_ejercito.unidad1_arma= objeto.id 
                                                                            WHERE villa_ejercito.id='"
.$_COOKIE["juego_jugador_id"]."'");
    
    
//Unidad2
    
$leer_unidad2_defensa1mysql_query("SELECT * FROM objeto INNER JOIN villa_ejercito 
                                                                            ON objeto.id= villa_ejercito.unidad2_escudo
                                                                            WHERE villa_ejercito.id='"
.$_COOKIE["juego_jugador_id"]."'");
    
$leer_unidad2_defensa2mysql_query("SELECT * FROM objeto INNER JOIN villa_ejercito 
                                                                            ON objeto.id= villa_ejercito.unidad2_yelmo
                                                                            WHERE villa_ejercito.id='"
.$_COOKIE["juego_jugador_id"]."'");
    
$leer_unidad2_defensa3mysql_query("SELECT * FROM objeto INNER JOIN villa_ejercito 
                                                                            ON objeto.id= villa_ejercito.unidad2_armadura
                                                                            WHERE villa_ejercito.id='"
.$_COOKIE["juego_jugador_id"]."'");
    
$leer_unidad2_ataquemysql_query("SELECT * FROM villa_ejercito INNER JOIN objeto 
                                                                            ON villa_ejercito.unidad2_arma= objeto.id 
                                                                            WHERE villa_ejercito.id='"
.$_COOKIE["juego_jugador_id"]."'");
    
    
//Unidad3
    
$leer_unidad3_defensa1mysql_query("SELECT * FROM objeto INNER JOIN villa_ejercito 
                                                                            ON objeto.id= villa_ejercito.unidad3_escudo
                                                                            WHERE villa_ejercito.id='"
.$_COOKIE["juego_jugador_id"]."'");
    
$leer_unidad3_defensa2mysql_query("SELECT * FROM objeto INNER JOIN villa_ejercito 
                                                                            ON objeto.id= villa_ejercito.unidad3_yelmo
                                                                            WHERE villa_ejercito.id='"
.$_COOKIE["juego_jugador_id"]."'");
    
$leer_unidad3_defensa3mysql_query("SELECT * FROM objeto INNER JOIN villa_ejercito 
                                                                            ON objeto.id= villa_ejercito.unidad3_armadura
                                                                            WHERE villa_ejercito.id='"
.$_COOKIE["juego_jugador_id"]."'");
    
$leer_unidad3_ataquemysql_query("SELECT * FROM villa_ejercito INNER JOIN objeto 
                                                                            ON villa_ejercito.unidad3_arma= objeto.id 
                                                                            WHERE villa_ejercito.id='"
.$_COOKIE["juego_jugador_id"]."'");
    
    
//Unidad4
    
$leer_unidad4_defensa1mysql_query("SELECT * FROM objeto INNER JOIN villa_ejercito 
                                                                            ON objeto.id= villa_ejercito.unidad4_escudo
                                                                            WHERE villa_ejercito.id='"
.$_COOKIE["juego_jugador_id"]."'");
    
$leer_unidad4_defensa2mysql_query("SELECT * FROM objeto INNER JOIN villa_ejercito 
                                                                            ON objeto.id= villa_ejercito.unidad4_yelmo
                                                                            WHERE villa_ejercito.id='"
.$_COOKIE["juego_jugador_id"]."'");
    
$leer_unidad4_defensa3mysql_query("SELECT * FROM objeto INNER JOIN villa_ejercito 
                                                                            ON objeto.id= villa_ejercito.unidad4_armadura
                                                                            WHERE villa_ejercito.id='"
.$_COOKIE["juego_jugador_id"]."'");
    
$leer_unidad4_ataquemysql_query("SELECT * FROM villa_ejercito INNER JOIN objeto 
                                                                            ON villa_ejercito.unidad4_arma= objeto.id 
                                                                            WHERE villa_ejercito.id='"
.$_COOKIE["juego_jugador_id"]."'");
    
    
$unidad1_atributosmysql_fetch_array($leer_unidad1_atributos);$unidad3_atributosmysql_fetch_array($leer_unidad3_atributos);
    
$unidad2_atributosmysql_fetch_array($leer_unidad2_atributos);$unidad4_atributosmysql_fetch_array($leer_unidad4_atributos);
    
    
//Sumamos
    
$unidad1_ataquemysql_result($leer_unidad1_ataque,13) + 0;
    
$unidad1_defensamysql_result($leer_unidad1_defensa1,14) + mysql_result($leer_unidad1_defensa2,14
                                        + 
mysql_result($leer_unidad1_defensa3,14) + 0;
    
$unidad2_ataquemysql_result($leer_unidad2_ataque,13) + 0;
    
$unidad2_defensamysql_result($leer_unidad2_defensa1,14) + mysql_result($leer_unidad2_defensa2,14
                                        + 
mysql_result($leer_unidad2_defensa3,14) + 0;
    
$unidad3_ataquemysql_result($leer_unidad3_ataque,13) + 0;
    
$unidad3_defensamysql_result($leer_unidad3_defensa1,14) + mysql_result($leer_unidad3_defensa2,14
                                        + 
mysql_result($leer_unidad3_defensa3,14) + 0;
    
$unidad4_ataquemysql_result($leer_unidad4_ataque,13) + 0;
    
$unidad4_defensamysql_result($leer_unidad4_defensa1,14) + mysql_result($leer_unidad4_defensa2,14
                                        + 
mysql_result($leer_unidad4_defensa3,14) + 0;
Se trata de mostrar la informacion sobre el ejercito de un usuario, es un juego online, ¿esto es aceptable?

saludos!
  #2 (permalink)  
Antiguo 21/08/2007, 09:02
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 13 años, 8 meses
Puntos: 2135
Re: ¿Esto es demasiado?

Creo yo muchas querys se podrian optimizar, y si dices que si "consumen mucho" todo depende de la capacidad de tu servidor de base de datos.

Saludos.
  #3 (permalink)  
Antiguo 21/08/2007, 09:09
 
Fecha de Ingreso: noviembre-2003
Mensajes: 798
Antigüedad: 16 años, 2 meses
Puntos: 8
Re: ¿Esto es demasiado?

Puedes utilizar algún sistema de cache o bien almacenar los datos en algún xml o cvs.

salu2
  #4 (permalink)  
Antiguo 21/08/2007, 09:12
 
Fecha de Ingreso: septiembre-2005
Ubicación: Valencia
Mensajes: 738
Antigüedad: 14 años, 5 meses
Puntos: 5
Re: ¿Esto es demasiado?

Optimizar como?

Dejadme las cosas claras y mejor =)
  #5 (permalink)  
Antiguo 21/08/2007, 09:29
 
Fecha de Ingreso: septiembre-2005
Ubicación: Valencia
Mensajes: 738
Antigüedad: 14 años, 5 meses
Puntos: 5
Re: ¿Esto es demasiado?

Almacenar los datos?
Ten en cuenta que esta informacion la recopilo en 2 secciones solo

saludos
  #6 (permalink)  
Antiguo 21/08/2007, 09:48
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 13 años, 8 meses
Puntos: 2135
Re: ¿Esto es demasiado?

Para decirte como optimizar tendria que ver toda la estructura de la base de datos y un buen rato de estar analizando tu sistema (yo vivo de eso ), asi que con lo poco que he visto hay muchas Querys repetidas que bien podrias sacar mucho mas rapido.

Saludos.
  #7 (permalink)  
Antiguo 21/08/2007, 10:14
 
Fecha de Ingreso: septiembre-2005
Ubicación: Valencia
Mensajes: 738
Antigüedad: 14 años, 5 meses
Puntos: 5
Re: ¿Esto es demasiado?

Esque porcada campo de una tabla tengo que referirme al id de otra tabla donde hay tengo otro campo que saco (INNER JOIN) y son cuatroxcuatro tablas que representa, el escudo, la armadura, el yelmo y el arma de cada unidad y son 4 unidades
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 06:39.