Conexion.class.php
Código PHP:
<?php
class Conexion
{
private $cn;
private $rs;
private $servidor;
private $usuario;
private $password;
private $bd;
public function __construct($servidor = "localhost", $usuario = "root", $password =
"220785", $bd = "sce")
{
$this->servidor = $servidor;
$this->usuario = $usuario;
$this->password = $password;
$this->bd = $bd;
$this->cn = new mysqli($servidor, $usuario, $password, $bd);
}
public function dbExecute($query)
{
$this->rs = $this->cn->query($query);
return $this->rs;
}
public function getInsertedId()
{
return $this->cn->insert_id;
}
public function afectados()
{
return $this->cn->affected_rows;
}
protected function clean($value)
{
if (get_magic_quotes_gpc()) {
$value = stripslashes($value);
}
$value = mysql_real_escape_string(htmlspecialchars($value));
return $value;
}
public function __destruct()
{
$this->cn;
}
}
?> Código PHP:
<?php
class Edad
{
private $fecha_nacimiento;
public function __construct($fecha_nacimiento)
{
$this->fecha_nacimiento = $fecha_nacimiento;
}
private function dia() //Día de la fecha de nacimiento
{
$fecha = explode("-", $this->fecha_nacimiento);
$dia = $fecha[2];
return $dia;
}
private function mes() //Mes de la fecha de nacimiento
{
$fecha = explode("-", $this->fecha_nacimiento);
$mes = $fecha[1];
return $mes;
}
private function anio() //Año de la fecha de nacimiendo
{
$fecha = explode("-", $this->fecha_nacimiento);
$anio = $fecha[0];
return $anio;
}
private function getmes() //Mes actual
{
$hoy = explode("-", date("Y-m-d"));
$mes = $hoy[1];
return $mes;
}
private function getanio() //Año actual
{
$hoy = explode("-", date("Y-m-d"));
$anio = $hoy[0];
return $anio;
}
private function getdia() //Día actual
{
$hoy = explode("-", date("Y-m-d"));
$dia = $hoy[2];
return $dia;
}
private function calculo() //Calculo de la edad actual
{
$cumplidos = $this->getanio() - $this->anio();
return $cumplidos;
}
public function calcular_edad()
//Calculo de la edad con la codicion de que si no ha llegado a la fecha exacta de nacimiento no imprime la edad que en el año actual deberia cumplir
{
$edad = $this->calculo();
if ($this->getmes() >= $this->mes() && $this->getdia() >= $this->dia()) { //Verifica que si el mes y dia son iguales a los de su nacimiento
return $edad;
} else {
$edad = $edad - 1;
return $edad;
}
}
public function __destruct()
{
$this->fecha_nacimiento;
}
}
?> Código PHP:
<?php
class Alumno extends Conexion
{
private $id_alumno;
private $nombre;
private $app;
private $apm;
private $edad;
private $sexo;
private $fecha_nacimiento;
private $estado_nacimiento;
private $municipio_nacimiento;
private $curp;
private $colonia;
private $calle;
private $numero_casa;
private $cp;
private $estado_residencia;
private $municipio_residencia;
private $telefono;
private $status;
private $fecha_ingreso;
private $imagen;
private $id_tutor;
private $id_grupo;
private $where;
public function __construct()
{
parent::__construct();
parent::__destruct();
}
public function agregar($id_alumno, $nombre, $app, $apm, $edad, $sexo, $fecha_nacimiento,
$estado_nacimiento, $municipio_nacimiento, $curp, $colonia, $calle, $numero_casa,
$cp, $estado_residencia, $municipio_residencia, $telefono, $status, $fecha_ingreso,
$imagen, $id_tutor, $id_grupo)
{
$this->id_alumno = $id_alumno;
$this->nombre = $nombre;
$this->app = $app;
$this->apm = $apm;
$this->edad = $edad;
$this->sexo = $sexo;
$this->fecha_nacimiento = $fecha_nacimiento;
$this->estado_nacimiento = $estado_nacimiento;
$this->municipio_nacimiento = $municipio_nacimiento;
$this->curp = $curp;
$this->colonia = $colonia;
$this->calle = $calle;
$this->numero_casa = $numero_casa;
$this->cp = $cp;
$this->estado_residencia = $estado_residencia;
$this->municipio_residencia = $municipio_residencia;
$this->telefono = $telefono;
$this->status = $status;
$this->fecha_ingreso = $fecha_ingreso;
$this->imagen = $imagen;
$this->id_tutor = $id_tutor;
$this->id_grupo = $id_grupo;
$query = "INSERT INTO alumnos (id_alumno,nombre,app,apm,edad,sexo,fecha_nacimiento,estado_nacimiento,municipio_nacimiento,curp,colonia,calle,numero_casa,cp,estado_residencia,municipio_residencia,telefono,status,fecha_ingreso,imagen,id_tutor,id_grupo) VALUES ('$id_alumno','$nombre','$app','$apm','$edad','$sexo','$fecha_nacimiento','$estado_nacimiento','$municipio_nacimiento','$curp','$colonia','$calle','$numero_casa','$cp','$estado_residencia','$municipio_residencia','$telefono','$status','$fecha_ingreso','$imagen','$id_tutor','$id_grupo')";
return $this->dbExecute($query);
}
public function consultar($where)
{
$this->where = $where;
$query = "SELECT * FROM alumnos $where";
return $this->dbExecute($query);
}
public function modificar($id_alumno, $nombre, $app, $apm, $edad, $sexo, $fecha_nacimiento,
$estado_nacimiento, $municipio_nacimiento, $curp, $colonia, $calle, $numero_casa,
$cp, $estado_residencia, $municipio_residencia, $telefono, $status, $fecha_ingreso,
$imagen, $id_tutor, $id_grupo)
{
$this->id_alumno = $id_alumno;
$this->nombre = $nombre;
$this->app = $app;
$this->apm = $apm;
$this->edad = $edad;
$this->sexo = $sexo;
$this->fecha_nacimiento = $fecha_nacimiento;
$this->estado_nacimiento = $estado_nacimiento;
$this->municipio_nacimiento = $municipio_nacimiento;
$this->curp = $curp;
$this->colonia = $colonia;
$this->calle = $calle;
$this->numero_casa = $numero_casa;
$this->cp = $cp;
$this->estado_residencia = $estado_residencia;
$this->municipio_residencia = $municipio_residencia;
$this->telefono = $telefono;
$this->status = $status;
$this->fecha_ingreso = $fecha_ingreso;
$this->imagen = $imagen;
$this->id_tutor = $id_tutor;
$this->id_grupo = $id_grupo;
$query = "UPDATE alumnos SET nombre='$nombre',app='$app',apm='$apm',edad='$edad',sexo='$sexo',fecha_nacimiento='$fecha_nacimiento',curp='$curp',colonia='$colonia',calle='$calle',numero_casa='$numero_casa',cp='$cp',estado_residencia='$estado_residencia',municipio_residencia='$municipio_residencia',telefono='$telefono',status='$status',fecha_ingreso='$fecha_ingreso',imagen='$imagen',id_tutor='$id_tutor',id_grupo='$id_grupo' WHERE id_alumno='$id_alumno'";
return $this->dbExecute($query);
}
public function eliminar($id_alumno)
{
$this->id_alumno = $id_alumno;
$query = "DELETE FROM alumnos WHERE id_alumno='$id_alumno'";
return $this->dbExecute($query);
}
public function total($where)
{
$this->where = $where;
$query = "SELECT COUNT(id_alumno) AS id_alumno FROM alumnos $where";
return $this->dbExecute($query);
}
}
?>

Tienes los conceptos de "herencia" realmente tergiversados, no debes de heredar por heredar (reutilizar código) debe de existir una relación de dependencia :s 

Saludos decorados
Gracias, me imagine que era algo así. Con lo del juego, lo entendí completamente.
Bueno al menos el tema sirvió para aprender algo nuevo (bueno para mí, en este caso). 

