Foros del Web » Programando para Internet » PHP »

forma correcta de general consultas e imprimir resultados en php

Estas en el tema de forma correcta de general consultas e imprimir resultados en php en el foro de PHP en Foros del Web. buenas tardes amigos, tengo un pequeño problema, soy nuevo aqui en esta pagina, primero mi pregunta esta relacionada entre php y sql asi que no ...
  #1 (permalink)  
Antiguo 27/08/2009, 17:17
Avatar de spacecowboy  
Fecha de Ingreso: agosto-2009
Mensajes: 110
Antigüedad: 14 años, 7 meses
Puntos: 0
forma correcta de general consultas e imprimir resultados en php

buenas tardes amigos, tengo un pequeño problema, soy nuevo aqui en esta pagina, primero mi pregunta esta relacionada entre php y sql asi que no supe en donde publicar este tema...
bueno mi pregunta es la siguiente como es la mejor manera de consultar una tabla en una base de datos, la tabla posee 300mil registros.
es un tabla de articulos, y a su vez hay 2 tablas relacionadas. en total son 3
articulos, articulos_img, articulos_comentarios.

voy a escribir mi codigo para que me digan si es la mejor de consultar a esta tabla (todas estan relacionadas por el id_articulo, y basicamente lo que hago es hacer un bucle e ir consultando y hacer otros bucles a medida que imprimo resultados):

Código PHP:
<?
//selecciono los articulos de cualquier usuario
$list mysql_query("SELECT * FROM articulos WHERE autor='elquesea'");
while(
$line mysql_fetch_assoc($list)) {
    print 
"$line[titulo] - $line[descripcion] - $line[fecha]";
    
    
//selecciono las imagenes de ese articulo y las imprimo
    
$listimg mysql_query("SELECT * FROM articulos_img WHERE id_articulo='$line[id_articulo]'");
    while(
$lineimg mysql_fetch_assoc($listimg)) {
        print 
"<img src=$lineimg[nombre]>";
    }
    
    
//selecciono los comentarios relacionados al articulo
    
$listcomentarios mysql_query("SELECT * FROM articulos_comentarios WHERE id_articulo='$line[id_articulo]'");
    while(
$linecomentarios mysql_fetch_assoc($listcomentarios)) {
    
        
//selecciono la foto del usuario que voy imprimiendo
        
$listfotos mysql_query("SELECT * FROM usuarios WHERE usuario='$linecomentarios[usuario]'");
        
$linefotos mysql_fetch_assoc($listfotos);
    
        print 
"<img src=$linefotos[foto]> $linecomentarios[usuario] :  $linecomentarios[comentario]";
        
    }    
    
}
?>
este codigo corre y funciona bien, mi pregunta es que si hay una forma de hacerlo mas rapido? ya que ahora tendre que trabajar con esta tabla que tiene 300mil registro, agradezco de antemano quien me pueda ayudar en este por favor, ya de verdad necesito ayuda en este tema
  #2 (permalink)  
Antiguo 27/08/2009, 21:12
 
Fecha de Ingreso: agosto-2009
Mensajes: 19
Antigüedad: 14 años, 8 meses
Puntos: 0
Respuesta: forma correcta de general consultas e imprimir resultados en php

si esos son los registros de la tabla y los quieres mostrar todos no hay nada que hacer en terminos de velocidad, lo que si te recomiendo es paginar los resulatdos del query con la funcion LIMIT y mostrarlos en secciones para obtener mayor rendimiento
  #3 (permalink)  
Antiguo 28/08/2009, 13:32
Avatar de spacecowboy  
Fecha de Ingreso: agosto-2009
Mensajes: 110
Antigüedad: 14 años, 7 meses
Puntos: 0
Respuesta: forma correcta de general consultas e imprimir resultados en php

Cita:
Iniciado por ingenius Ver Mensaje
si esos son los registros de la tabla y los quieres mostrar todos no hay nada que hacer en terminos de velocidad, lo que si te recomiendo es paginar los resulatdos del query con la funcion LIMIT y mostrarlos en secciones para obtener mayor rendimiento
vale! gracias, bueno los datos lo mostrare con paginacion, pero pensaba que quizas la manera de hacer la consulta influye en el tiempo que demora consultando los datos
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 16:32.