Por eso te decia, que no estaba incluido el set_secure dentro de ejecutar.
Lo que podrias hacer es algo como esto.
Código PHP:
public function ejecutar($sql){
$sql=$this->set_secure($sql); //linea agregada
if(is_string($sql)){
if($this->secure){
$this->stmt=mysql_query($sql,$this->link) or die(mysql_error());
return $this->stmt;
}else{
exit('La consulta ejecutada está prohibida');
}
}
}
asi siempre vas a "sanar" aunque sea un query simple (ademas te convierte en 'true' el atributo 'secure', y no tenes que llamar al metodo set_secure por separado.