A ver si esto te sirve:
Código PHP:
Ver original<?php
/**
CREATE TABLE ’temp’ (
‘id’ int(11) NOT NULL AUTO_INCREMENT,
‘descripcion’ varchar(128) DEFAULT NULL,
‘dependencia’ int(11) DEFAULT NULL,
PRIMARY KEY (‘id’)
) ENGINE=InnoDB AUTO_INCREMENT=8 DEFAULT CHARSET=latin1
CREATE TABLE ’temp’ (
‘id’ DOUBLE ,
‘descripcion’ VARCHAR (384),
‘dependencia’ DOUBLE
);
INSERT INTO ’temp’ (‘id’, ’descripcion’, ’dependencia’) VALUES(’1′,’General’,’0′);
INSERT INTO ’temp’ (‘id’, ’descripcion’, ’dependencia’) VALUES(’2′,’Reservas’,’0′);
INSERT INTO ’temp’ (‘id’, ’descripcion’, ’dependencia’) VALUES(’3′,’Facturacion’,’0′);
INSERT INTO ’temp’ (‘id’, ’descripcion’, ’dependencia’) VALUES(’4′,’Reservas_Online’,’2′);
INSERT INTO ’temp’ (‘id’, ’descripcion’, ’dependencia’) VALUES(’5′,’Reservas_Offline’,’2′);INSERT INTO ’temp’ (‘id’, ’descripcion’, ’dependencia’) VALUES(’6′,’Cobros’,’3′);
INSERT INTO ’temp’ (‘id’, ’descripcion’, ’dependencia’) VALUES(’7′,’Pagos’,’3′);
*/
function getMenu($xElement)
{
$sql = “SELECT * FROM temp WHERE dependencia = ’$xElement’;”;
if ($fetch['dependencia'])
$xResponse[$fetch['dependencia']][$fetch['id']]['descripcion'] = $fetch['descripcion'];
$xResponse[$fetch['dependencia']][$fetch['id']]['id'] = $fetch['id'];
$xResponse[$fetch['dependencia']][$fetch['id']]['dependencias'] = (count(getMenu
($fetch['id'])) ? getMenu
($fetch['id']) : “Ninguna”
);
} else {
$xResponse[$fetch['id']]['descripcion'] = $fetch['descripcion'];
$xResponse[$fetch['id']]['id'] = $fetch['id'];
$xResponse[$fetch['id']]['dependencias'] = (count(getMenu
($fetch['id'])) ? getMenu
($fetch['id']) : “Ninguna”
);
}
}
return $xResponse;
}
echo “<pre>”;
echo “</pre>”;
?>