Foros del Web » Programando para Internet » PHP »

problema un poco raro...

Estas en el tema de problema un poco raro... en el foro de PHP en Foros del Web. hola a todos! Tengo un problema bastante rarito, o al menos eso me parece a mí. Mi aplicación tiene un archivo que se llama GestorBD.php, ...
  #1 (permalink)  
Antiguo 18/08/2007, 04:59
 
Fecha de Ingreso: febrero-2006
Mensajes: 174
Antigüedad: 18 años, 1 mes
Puntos: 0
problema un poco raro...

hola a todos!

Tengo un problema bastante rarito, o al menos eso me parece a mí.
Mi aplicación tiene un archivo que se llama GestorBD.php, que es el que se encarga de realizar la conexión con la BD y de lanzar las consultas SQL. Luego, tengo diferentes gestores específicos que se basan en este para realizar sus cometidos. Por ejemplo, la constructora del GestorBD es esta:

Código PHP:
class GestorBD{//-> clase gestorBD
public $errorTrans ;        //<-- Variable encargada de controlar si ha existido algún error.
private $conex;
    function 
__construct()
    {

        if(!
$conex mysql_connect("localhost","root","")){
            die( 
"No se puede conectar con la base de datos");
        }
        
mysql_select_db("etxaniz");
        
$errorTrans 0
        
//$_SESSION["conex"]=$conex;    
    
}
    

        
    
//Función encargada de ejecutar las sentencias SQL
    //@param $sqlQuery = Contiene la sentencia "SQL" que queremos realizar.
    
function execute($sqlQuery)
    {
//-> execute
        
if (!$result mysql_db_query("etxaniz",$sqlQuery)){
            echo 
"No se puede consultar la base de datos ".$sqlQuery;
        }
        
        
//$result = mysql_query($sqlQuery);
        
if ($result){
            return 
$result;        
            }
        else{ 
            die(
"Error al ejecutar la sentencia SQl: $result");echo $sqlQuery;
            
$errorTrans++;        
            }
    }
    } 
y por ejemplo, tengo un gestorPisos.php que se basa en este:

Código PHP:
<?php

class GestorPisos{

function 
__construct(){    
    include_once(
"./GestorBD.php");echo "p1";
    
$this->gestorBD= new GestorBD();echo "p2";
                        
}

function 
insertarPisoProp($id$localidad$zona$direc$ascensor$calefaccion$estado$gastos$superficie$orientacion$numhab$descrip$comentarios$precio$tipo){

 
$sqlQuery="INSERT INTO pisosventa (Id, localidad, Zona, Direccion, Ascensor, Calefaccion, Estado, GastosComunidad, Superficie, Orientacion,NumHab, Descripcion, Comentarios, Precio, Tipo) VALUES ('$id', '$localidad', '$zona', '$direc', '$ascensor', '$calefaccion', '$estado','$gastos', '$superficie', '$orientacion','$numhab', '$descrip', '$comentarios', '$precio', '$tipo')";
 
$resultado=$this->gestorBD->execute($sqlQuery) ;
 return 
$resultado
}
pues esta estructura probándola en mi ordenador funciona estupendamente, además, respeta aquello de la arquitectura en 3 niveles. He subido la aplicación al servidor, y aquí es dónde me sorprendo, ya que no funciona. He empezado a poner echo "1" y cosas así para saber hasta dónde llega. Pues bien, no ejecuta la constructora del GestorBD, no llega a entrar en él, y la verdad, no me explico por qué... la llamada es la siguiente:

Código PHP:
include_once("./GestorPisos.php");
$gp=new GestorPisos();echo "1";
$res=$gp->comprobarUsuario($usuario);echo "2"
el echo "2" ya no lo hace, se queda en el 1.... no tengo ni idea de por qué puede ser, y claro, como en local funciona ya no sé qué más probar...

alguien tiene alguna sugerencia???

muchas gracias!!:
  #2 (permalink)  
Antiguo 18/08/2007, 08:07
Avatar de Gabo77  
Fecha de Ingreso: noviembre-2006
Mensajes: 381
Antigüedad: 17 años, 4 meses
Puntos: 6
Re: problema un poco raro...

Shhhh!!!! Que no te vea el BrujoNick publicando código PHP en foros de SQL!!!
__________________
Hicimos un pacto con Dios... El no desarrolla Sistemas y nosotros no hacemos milagros....
  #3 (permalink)  
Antiguo 18/08/2007, 12:49
Avatar de BrujoNic
Super Moderador
 
Fecha de Ingreso: noviembre-2001
Ubicación: Costa Rica/Nicaragua
Mensajes: 16.935
Antigüedad: 22 años, 4 meses
Puntos: 655
Re: problema un poco raro...

Gracias por promocionarme Gabo77, solo una cosita, es BrujoNic, si la K al final.

Trasladado de BD a PHP. Favor no poner código de programación en BD.

Función de la sección de Base de Datos
__________________
La tecnología está para ayudarnos. No comprendo el porqué con esa ayuda, la gente escribe TAN MAL.
NO PERDAMOS NUESTRO LINDO IDIOMA ESPAÑOL
  #4 (permalink)  
Antiguo 18/08/2007, 15:18
 
Fecha de Ingreso: enero-2007
Mensajes: 51
Antigüedad: 17 años, 2 meses
Puntos: 0
Re: problema un poco raro...

En la parte del este código

Código PHP:
include_once("./GestorPisos.php");
$gp=new GestorPisos();echo "1";
$res=$gp->comprobarUsuario($usuario);echo "2"
Tu haces una llamada a una función que no existe "comprobarUsuario"
  #5 (permalink)  
Antiguo 19/08/2007, 05:35
 
Fecha de Ingreso: febrero-2006
Mensajes: 174
Antigüedad: 18 años, 1 mes
Puntos: 0
Re: problema un poco raro...

sí, sí que existe esa función, lo que pasa es que no la he puesto. Sin más, solo hace un select para ver si ya existe un usuario con ese nombre. El problema no es ese, es que no llega a ejecutar la constructora del GestorBD!

Socorro!!!
  #6 (permalink)  
Antiguo 19/08/2007, 08:16
 
Fecha de Ingreso: octubre-2004
Ubicación: Barcelona
Mensajes: 195
Antigüedad: 19 años, 5 meses
Puntos: 7
Re: problema un poco raro...

No será que en el servidor tiernes PHP 4 y no PHP 5 como en local... si fuese eso tendrías que añadir una función GestorDB que llame a __construct.
  #7 (permalink)  
Antiguo 20/08/2007, 04:39
 
Fecha de Ingreso: febrero-2006
Mensajes: 174
Antigüedad: 18 años, 1 mes
Puntos: 0
Re: problema un poco raro...

Tenías razón. En mi ordenador tengo php 5 y en el servidor php 4.4.4. Por eso no funciona lo el construct, y tampoco las variables private...

Muchas gracias por vuestra ayuda!!!

Saludosss
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 18:29.