Original geschrieben von lx-club
code hab ich gepostet
code hab ich gepostet
tipp: tabellen macht man mit dem <table> tag, den find ich in deinem code nicht
$ergebnis=$klasse->showmenu(5);
hier kommt jetzt ganz viel code, der solange mit $ergebnis rumwurschtelt, bis ne tabelle rauskommt
diesen code will ich haben
$ergebnis=$klasse->showmenu(5);
<?
include("class_mysql.php");
class tree extends db{
function select_submenu($mid){
$sql = "SELECT a.node_id , a.lft , a.rgt , a.payload
FROM node AS a
INNER JOIN node AS b ON (a.lft <= b.lft AND a.rgt >= b.rgt)
WHERE b.node_id = '$mid'
ORDER BY a.lft";
$res=$this->sql($sql);
$level = 2;
$submenu = "level <= $level";
while($row = mysql_fetch_array($res)){
if($level > 2){
$submenu .= " OR (L > ".$row['lft']." AND R < ".$row['rgt']." AND level = ".$level.")";
}
$level++;
}
return $submenu;
}
function show_menu($mid){
GLOBAL $PHP_SELF;
$sql = "SELECT pages1.lft AS L, pages1.rgt AS R,
CONCAT(LPAD(pages1.node_id, 2 ,' '),
REPEAT(' .', COUNT(*) ),
pages1.payload) AS Baum ,
pages1.node_id AS mid,
COUNT(*) AS level
FROM node AS pages1, node AS pages2
WHERE pages1.lft BETWEEN pages2.lft AND pages2.rgt AND pages1.lft > '1'
GROUP BY pages1.lft
HAVING ".$this -> select_submenu($mid);
$res = $this -> sql($sql);
while($row = mysql_fetch_assoc($res)){
$menu_arr[]=$row;
}
$table = "<tr>";
foreach($menu_arr as $values) {
for($i=0; $i<1; $i++){
$table .="<td><a href='$PHP_SELF?mid=".$values['mid']."'>".$values['Baum']."</a></td>";
}
$table .= "</tr>";
}
return "<table border='1'>$table</table>";
}
}
?>
Kommentar