Ver Mensaje Individual
  #1 (permalink)  
Antiguo 14/06/2013, 08:28
Avatar de guardarmicorreo
guardarmicorreo
 
Fecha de Ingreso: noviembre-2012
Ubicación: Córdoba
Mensajes: 1.153
Antigüedad: 11 años, 5 meses
Puntos: 84
problema con $this en un try-catch

estoy mejorando la clase que utilizo para conectar a mysql, entonces le agregué un try catch y al acceder a las propiedades definidas por el constructor me devuelve un mensaje de error.

esta es mi clase

Código PHP:
Ver original
  1. class Conectar
  2.     {
  3.         //contiene la ip de la bd
  4.         private $IP = "127.0.0.1";
  5.        
  6.         //contiene el usuario para acceder a la bd
  7.         private $Usuario = "root";
  8.        
  9.         //contiene la contraseña para acceder a la bd
  10.         private $Passwd = "";
  11.        
  12.         //contiene la base de datos a la que hay que acceder
  13.         private $BaseDatos;
  14.        
  15.         //contiene el texto sql de la consulta
  16.         private $TextoSQL;
  17.        
  18.         public function __construct( $TextoSQL , $BaseDatos )
  19.         {
  20.             $this->TextoSQL     = $TextoSQL;
  21.             $this->BaseDatos    = $BaseDatos;
  22.         }
  23.        
  24.         public static function connect($TextoSQL)
  25.         {
  26.             try
  27.             {
  28.                                 //esta es la línea 60
  29.                 $IDConexion = new mysqli($this->IP , $this->Usuario , $this->Passwd , $this->BaseDatos );
  30.                 $IDConsulta = $IDConexion->query($TextoSQL);
  31.                 if($IDConsulta===false) throw new Exception ( "ERROR EN LA CONEXIÓN A LA BASE DE DATOS" );
  32.                 {
  33.                     return $IDConsulta;
  34.                 }
  35.             }
  36.             catch(Exception $e)
  37.             {
  38.                 echo $e->getMessage();
  39.             }
  40.         }
  41.     }

este es el error que me devuelve

Cita:
Fatal error: Using $this when not in object context in C:\xampp\htdocs\xampp\web\poo\clases.php on line 60
la línea 60 está indicada en el código de la clase

¿alguien me puede ayudar?

gracias!