Foros del Web » Programando para Internet » PHP »

PHP OO Fatal error: Exception thrown without a stack frame in Unknown on line 0

Estas en el tema de Fatal error: Exception thrown without a stack frame in Unknown on line 0 en el foro de PHP en Foros del Web. Buenos días, Explico mi problema, tengo una clase PHP y dentro de ella tengo una función que me llama a un procedimiento de otra clase ...
  #1 (permalink)  
Antiguo 09/05/2012, 06:56
Avatar de jjimbal  
Fecha de Ingreso: mayo-2012
Mensajes: 4
Antigüedad: 5 años, 6 meses
Puntos: 0
Fatal error: Exception thrown without a stack frame in Unknown on line 0

Buenos días,

Explico mi problema, tengo una clase PHP y dentro de ella tengo una función que me llama a un procedimiento de otra clase donde ejecuto sentencias SQL, para consultas, altas, etc. La siguiente:


public function ejecutar($sql){
try{
return $this->obj_db->ejecutar($sql);
}catch (Exception $ex){
return false;
}
}

Todo funcionaba correctamente hasta que he cambiado de alojamiento, y ahora cuando en concreto ejecuto una alta o actulización aparece el dichoso mensaje:

Fatal error: Exception thrown without a stack frame in Unknown on line 0

Como en el alojamiento no dejan tocar el php.ini (ya que sospecho que el parámetro limit del time no es el suficiente), me dicen que puedo tocar el .htaccess.

Pregunto ¿hay alguna configuración ideal para este archivo?.
Alguna solución práctica?

Gracias de antemano a todo el que pueda ayudar.

Nota: los listados y filtros de consulta funcionan, ya digo falla el alta.
  #2 (permalink)  
Antiguo 09/05/2012, 07:18
Avatar de oscartt67  
Fecha de Ingreso: abril-2012
Ubicación: fonollosa
Mensajes: 477
Antigüedad: 5 años, 7 meses
Puntos: 97
Respuesta: Fatal error: Exception thrown without a stack frame in Unknown on line 0

..primera vez que veo ese error. En google, he encontrado esto....(casi al final de la página, habla de eso)

http://php.net/manual/es/ref.errorfunc.php

Saludos.
  #3 (permalink)  
Antiguo 09/05/2012, 08:51
Avatar de jjimbal  
Fecha de Ingreso: mayo-2012
Mensajes: 4
Antigüedad: 5 años, 6 meses
Puntos: 0
Respuesta: Fatal error: Exception thrown without a stack frame in Unknown on line 0

Gracias, lo voy mirando, si doy con la solución lo publico.
  #4 (permalink)  
Antiguo 09/05/2012, 16:05
Avatar de jjimbal  
Fecha de Ingreso: mayo-2012
Mensajes: 4
Antigüedad: 5 años, 6 meses
Puntos: 0
Respuesta: Fatal error: Exception thrown without a stack frame in Unknown on line 0

Buenas noches,

He logrado solucionar el problema vía programación, les dejo la solución por si les puede ayudar en futuras actuaciones. Consiste en comentar o eliminar el set_error_handler que parece ser que a este nuevo hosting no le ha sentado bien (podría ser la versión de PHP). No obstante muchas gracias por su colaboración.

1º Comento la parte donde aparece mi manejador de errores del construct

public function __construct(){

// set_error_handler(array($this, 'manejadorExeption')); // se llama así porque está dentro de un objeto.

switch( Config::TIPO_DB){
case Conexion::MYSQL: $this->obj_db = new ConexionMYSQL(); break;
case Conexion::SQLSERVER: $this->obj_db = new ConexionSQLServer(); break;
}

CleanString::limpieza();

$this->conectar(); //llamada a funcion de este objeto
mysql_set_charset('utf8'); // para indicar a la bbdd que vamos a mostrar la info en utf
}

public function __desctruct(){
$this->desconectar();
}

Y evidentemente también comento la función correspondiente.

/* public function manejadorExeption($numError, $msgError) {
throw new Exception($msgError, $numError);
} */

Espero que le sirva a alguien.

No obstante en mi opinión personal es preferible controlar los errores a que lo haga php por tí, es digamos mas profesional.
  #5 (permalink)  
Antiguo 10/05/2012, 02:30
Avatar de jjimbal  
Fecha de Ingreso: mayo-2012
Mensajes: 4
Antigüedad: 5 años, 6 meses
Puntos: 0
Respuesta: Fatal error: Exception thrown without a stack frame in Unknown on line 0

Buenos días,

De lo dicho en el último mensaje: NI CASO, si que funcionaba como solución, pero no estaba tranquilo ya que no me parecía muy profesional.

Tras estudiar el error más en profundidad, resulta que es un tema del php.ini en concreto no coincide el datetime.zone del servidor con en mi caso Europa...

Así que lo he actualizado vía .htaccess

Ahora sí.
  #6 (permalink)  
Antiguo 06/07/2016, 15:24
 
Fecha de Ingreso: julio-2016
Mensajes: 2
Antigüedad: 1 año, 4 meses
Puntos: 0
Respuesta: Fatal error: Exception thrown without a stack frame in Unknown on line 0

Consulte un mensaje suyo en el foro que habla del siguiente error
Respuesta: Fatal error: Exception thrown without a stack frame in Unknown on line 0
You so drupal, detecte que en el fichero bootstrap.ini, aparece
function _drupal_error_handler($error_level, $message, $filename, $line, $context) { require_once DRUPAL_ROOT . '/includes/errors.inc';
_drupal_error_handler_real($error_level, $message, $filename, $line, $context);
}
pero no sé cómo modificarlo para adaptarlo al código que usted sugiere en su comentario, que descontruye, si pudiera indicarme por favor; este error llevo días casandolo y no he logrado resolver el problema. saludos. Abel ([email protected])
  #7 (permalink)  
Antiguo 06/07/2016, 15:25
 
Fecha de Ingreso: julio-2016
Mensajes: 2
Antigüedad: 1 año, 4 meses
Puntos: 0
Respuesta: Fatal error: Exception thrown without a stack frame in Unknown on line 0

Consulte un mensaje suyo en el foro que habla del siguiente error

Respuesta: Fatal error: Exception thrown without a stack frame in Unknown on line 0
You so drupal, detecte que en el fichero bootstrap.ini, aparece
function _drupal_error_handler($error_level, $message, $filename, $line, $context) { require_once DRUPAL_ROOT . '/includes/errors.inc';
_drupal_error_handler_real($error_level, $message, $filename, $line, $context);
}
pero no sé cómo modificarlo para adaptarlo al código que usted sugiere en su comentario, que descontruye, si pudiera indicarme por favor; este error llevo días casandolo y no he logrado resolver el problema. saludos. Abel ([email protected])



Cita:
Iniciado por jjimbal Ver Mensaje
Buenas noches,

He logrado solucionar el problema vía programación, les dejo la solución por si les puede ayudar en futuras actuaciones. Consiste en comentar o eliminar el set_error_handler que parece ser que a este nuevo hosting no le ha sentado bien (podría ser la versión de PHP). No obstante muchas gracias por su colaboración.

1º Comento la parte donde aparece mi manejador de errores del construct

public function __construct(){

// set_error_handler(array($this, 'manejadorExeption')); // se llama así porque está dentro de un objeto.

switch( Config::TIPO_DB){
case Conexion::MYSQL: $this->obj_db = new ConexionMYSQL(); break;
case Conexion::SQLSERVER: $this->obj_db = new ConexionSQLServer(); break;
}

CleanString::limpieza();

$this->conectar(); //llamada a funcion de este objeto
mysql_set_charset('utf8'); // para indicar a la bbdd que vamos a mostrar la info en utf
}

public function __desctruct(){
$this->desconectar();
}

Y evidentemente también comento la función correspondiente.

/* public function manejadorExeption($numError, $msgError) {
throw new Exception($msgError, $numError);
} */

Espero que le sirva a alguien.

No obstante en mi opinión personal es preferible controlar los errores a que lo haga php por tí, es digamos mas profesional.

Etiquetas: exception, fatal, frame, line, sql, unknown
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 03:21.