Ver Mensaje Individual
  #1 (permalink)  
Antiguo 18/08/2007, 04:59
xayide
 
Fecha de Ingreso: febrero-2006
Mensajes: 174
Antigüedad: 18 años, 2 meses
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!!: