Foros del Web » Programando para Internet » PHP »

Pbloblema al leer tres tablas de una db

Estas en el tema de Pbloblema al leer tres tablas de una db en el foro de PHP en Foros del Web. hola, me esta pasando algo muy curioso, necesito leer la informacion de tres tablas de mi base de datos dentro de un archivo, como es ...
  #1 (permalink)  
Antiguo 29/11/2007, 08:55
Avatar de nes24  
Fecha de Ingreso: julio-2005
Mensajes: 746
Antigüedad: 18 años, 9 meses
Puntos: 3
Pbloblema al leer tres tablas de una db

hola, me esta pasando algo muy curioso, necesito leer la informacion de tres tablas de mi base de datos dentro de un archivo, como es notorio cada informacion va en distintas partes del documento. La cuestion es que no se imprimen los valores de la linea 80 ni los de la 200 pese a que las tablas de la vase de datos tienen valores.

estoy por creer que es cosa del include ("funcion3.php"); que sera???

funcion3.php
// conexion sencilla a la db
<? mysql_connect("localhost","user","pass");
$base1 = "basededatos";
?>

mostrarlibros.php
// linea 10
<? include("funcion3.php");
$resultado_enlinea=mysql_db_query("$base1","select * from libros_ciencia ORDER BY fecha DESC LIMIT 0,10");
while ($row=mysql_fetch_array($resultado_enlinea))
{
?>
//libros

<?
}
?>

// linea 80
<? include("funcion3.php");
$resultado_consola=mysql_db_query("$base1","select * from libros_consola ORDER BY fecha DESC LIMIT 0,10");
while ($row_consola=mysql_fetch_array($resultado_consola ))
{?>
// libros consola

<? } ?>
// linea 200

<? include("funcion3.php");
$resultado_pc=mysql_db_query("$base1","select * from libros_pc ORDER BY fecha DESC LIMIT 0,10");
while ($row_pc=mysql_fetch_array($resultado_pc))
{
//librospc
<? } ?>


que puedo hacer ???
  #2 (permalink)  
Antiguo 29/11/2007, 09:32
Avatar de popobcn
Moderador
 
Fecha de Ingreso: noviembre-2006
Ubicación: Cerdanyola del Vallès
Mensajes: 3.892
Antigüedad: 17 años, 5 meses
Puntos: 1142
Re: Pbloblema al leer tres tablas de una db

Hola,

¿Como estas imprimiendo los datos? ¿Con que forma trabajas con los datos consultados? Yo te recomendaria ir por pasos... O sea, comenta la totalidad o parte del código que esta dandote problemas y trabaja con una única consulta con el fin de comprobar si existe algún problema con la primera consulta... Y así sucesivamente:

Código PHP:
$variable1 $row_pc['campo'];
echo 
$variable1
Yo, por lo menos, no he visto ningún error apreciable en el código que has publicado... pero claro esta, falta la parte que esta ocasionando el problema.

Saludos.
  #3 (permalink)  
Antiguo 29/11/2007, 09:35
Avatar de nes24  
Fecha de Ingreso: julio-2005
Mensajes: 746
Antigüedad: 18 años, 9 meses
Puntos: 3
Re: Pbloblema al leer tres tablas de una db

justamente es lo que no entiendo, porqueno seimprime, deveria imprimirse, no es cuestion de como se llaman ls variables sino que el while de las otras dos lineas no esta funcionando...
  #4 (permalink)  
Antiguo 29/11/2007, 09:35
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
Re: Pbloblema al leer tres tablas de una db

Adicionalmente, no necesitas conectarte cada que llamas a un Query en la misma pagina, basta con que te conectes una sola vez.

Saludos.
  #5 (permalink)  
Antiguo 29/11/2007, 09:51
 
Fecha de Ingreso: junio-2006
Mensajes: 270
Antigüedad: 17 años, 10 meses
Puntos: 0
Re: Pbloblema al leer tres tablas de una db

Una cosa. ¿Por que no cambias la estructura en que lo haces? Tu lo que haces es abrir una conexion sql, y ahi se queda abierta. Lo mas logico es hacer esto:
function3.php
Código PHP:
<?php
class conectar {
 function 
conectar() {}
 function 
query($base$sql) {
    
$conex mysql_connect("localhost","user","pass");
    
mysql_select_db($base);
    
$result mysql_query($sql$conex);
    
mysql_close($conex);
    return 
$result;
 }
?>
Y en mostrarlibros.php
Código PHP:
include("function3.php")
$con = new conectar();
$resultado_pc=  $con->query("$base1","select * from libros_pc ORDER BY fecha DESC LIMIT 0,10"); 
Asi te aseguras de que siempre se abre y cierra la conexion con sql. Incluso puedes hacer metodos mas limpios creando una funcion en el function3.php que sea por ejemplo
Código PHP:
function consulta($base$tabla$orden) {
 
this->query($base"select * from ".$tabla." ORDER BY ".$orden); 
Creo que se ve el juego que dan las clases. En el constructor no he puesto nada proque todo lo paso mediante funciones. En java lo suyo seria crear atributos private y pasarselos en el constructor. Pero la verdad que en este caso, como que no es muy util.
  #6 (permalink)  
Antiguo 29/11/2007, 11:22
Avatar de popobcn
Moderador
 
Fecha de Ingreso: noviembre-2006
Ubicación: Cerdanyola del Vallès
Mensajes: 3.892
Antigüedad: 17 años, 5 meses
Puntos: 1142
Re: Pbloblema al leer tres tablas de una db

Cita:
Iniciado por darkxer0x Ver Mensaje
function3.php
Código PHP:
<?php
class conectar {
 function 
conectar() {}
 function 
query($base$sql) {
    
$conex mysql_connect("localhost","user","pass");
    
mysql_select_db($base);
    
$result mysql_query($sql$conex);
    
mysql_close($conex);
    return 
$result;
 }
?>
Me a gustado mucho la estructura que has planteado!!! :)

Saludos
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 14:02.