Buenas, estoy intentando mostrar por pantalla mi menu de dos niveles, la función que uso es correcta si la uso fuera de xajax pero si la intento convertir a este framework me tira el siguiente error.
Catchable fatal error</b>: Object of class xajaxResponse could not be converted to string in line 249
Esa línea es justo la que llama a la función así misma(aqui linea 53), os dejo la función.
Código Javascript
:
Ver original//Métodos XAJAX
require ('clases/xajaxAIO.inc.php');
//instanciamos el objeto de la clase xajax
$xajax = new xajax();
//asociamos las funcióes creadas para xajax
$xajax->registerFunction("montarTabla");
function montarTabla($padre, $menu)
{
include ('conexionlite.php');
// Preparamos la sentencia y sacamos el array de datos PDO SQLite
$sth = $dbh->prepare("SELECT id, nombre, link, padre FROM menu");
$sth->execute();
// Iniciamos los arrays
$menu = array(
'items' => array(),
'padres' => array()
);
// Asignamos los datos a sus respectivos arrays
while ($items = $sth->fetch())
{
// Insertamos cada valor con su id. $menu['items'][1]
$menu['items'][$items['id']] = $items;
// Asgiamos todos los hijos a sus padres correspondientes
$menu['padres'][$items['padre']][] = $items['id'];
}
$html = "";
if (isset($menu['padres'][$padre]))
{
$html .= "
<ul>";
foreach ($menu['padres'][$padre] as $itemId)
{
if(!isset($menu['padres'][$itemId]))
{
$html .= "<li> <a href='".$menu['items'][$itemId]['link']."'>".$menu['items'][$itemId]['nombre']."</a></li> ";
}
if(isset($menu['padres'][$itemId]))
{
$html .= "
<li> <a href='".$menu['items'][$itemId]['link']."'>".$menu['items'][$itemId]['nombre']."</a> ";
$html .= montarTabla($itemId, $menu);
$html .= "</li> ";
}
}
$html .= "</ul> ";
}
//Instanciamos el objeto para generar la respuesta con ajax
$respuesta = new xajaxResponse();
$respuesta->assign("tabla","innerHTML", $html);
return $respuesta;
}