Reciente me estoy iniciando en php, y quiero orientarme por la modalidad orientada a objetos, he leido mucho, y he visto algunos videos que me han ayudado, ahora bien no me gusta hacer las cosas como otro las hace, me gusta implementar mi forma, creo que asi somos todos...
En fin, mi duda es la siguiente estoy intentando crear una clase Conexion que herede de otra clase llamada Configuracion y no he podido hacerlo aun me esta dando Error...
Este es el listado de errores en pantalla disculpen la puesta en codigo php
Código PHP:
Notice: Undefined variable: servidor in C:wampwwwPruebas PHP OOPManejadorDeArticulos.php on line 8
Notice: Undefined variable: usuario in C:wampwwwPruebas PHP OOPManejadorDeArticulos.php on line 8
Notice: Undefined variable: clave in C:wampwwwPruebas PHP OOPManejadorDeArticulos.php on line 8
Notice: Undefined variable: database in C:wampwwwPruebas PHP OOPManejadorDeArticulos.php on line 8
Fatal error: Undefined class constant 'getServidor' in C:wampwwwPruebas PHP OOPConexionDb.php on line 14
Código PHP:
<?php
class ConfiguracionDB{
private $servidor = "localhost";
private $usuario = "root";
private $clave = "";
private $database = "pruebas";
public function __construct($servidor, $usuario, $clave, $database){
$this->servidor = $servidor;
$this->usuario = $usuario;
$this->clave = $clave;
$this->database = $database;
}
public function getServidor(){
return $this->servidor;
}
public function getUsuario(){
return $this->usuario;
}
public function getClave(){
return $this->clave;
}
public function getDatabase(){
return $this->database;
}
}
?>
Código PHP:
<?php
include('ConfiguracionDb.php');
class ConexionDb extends ConfiguracionDb{
private $link;
private $resultQuery;
public function __construct($servidor, $usuario, $clave, $database){
parent::__construct($servidor, $usuario, $clave, $database);
$this->conectarDb();
}
public function conectarDb(){
//aqui tengo este error
//Fatal error: Undefined class constant 'getServidor' in C:\wamp\www\Pruebas PHP OOP\ConexionDb.php on line 14
//y mi pregunta es si es posible hacer eso que estoy haciendo pasar por parametros la llamada de las funciones...
$this->link = mysql_connect(parent::getServidor, parent::getUsuario, parent::getClave);
mysql_select_db(parent::getDatabase, $this->link);
}
public function ejecutarSQL($sentenciaSQL){
mysql_query($sentenciaSQL, $this->link);
}
public function consltarDb($sentenciaSQL){
$this->resultQuery = mysql_query($sentenciaSQL, $this->link);
return $this->resultQuery;
}
public function cerrarConexion($link){
mysql_close($this->link);
}
}
Código PHP:
<?php
include('ConexionDb.php');
include('Articulo.php');
class ManejadorDeArticulos{
private $conexion;
public function __construct(){
//Esta linea me dice que las variables que paso por parametro no estan definidas
//y si las quito me dice que tengo que pasarlas...
//Notice: Undefined variable: servidor in C:\wamp\www\Pruebas PHP OOP\ManejadorDeArticulos.php on line 8
//tengo 4 errores del antes mensionado, me imagino que por los 4 parametros
$this->conexion = new ConexionDb($servidor, $usuario, $clave, $database);
}
public function agregarArticulo($articulo){
$descripcion = $articulo->getDescripcion();
$precio = $articulo->getPrecio();
$cantidad = $articulo->getCantidad();
$query = "INSERT INTO articulos (descripcion, precio, cantidad)
VALUES('$descripcion', '$precio','$cantidad')";
$this->conexion->ejecutarSQL($query);
}
}
?>
de veras Gracias...