- $menu = array();
- $res=mysql_query("SELECT text,class,link,show_condition,parent FROM rob_pages");
- $x = 1;
- while($r=mysql_fetch_assoc($res))
- {
- $menu[$x]=$r;
- $x++;
- }
-
- eller ->
-
- $menu = array();
- $query = "SELECT text,class,link,show_condition,parent FROM rob_pages";
- $result = mysql_query($query);
- for($x = 1; $x <= mysql_num_rows($result); $x++) {
- $menu[$x] = mysql_fetch_assoc($result);
- }
- return $menu;
Begge spytter arrayet ud hvis jeg bruger echo "<pre>";
echo print_r($menu);
echo "</pre>";
Men mit menu script vil ikke vise dem
Mit menu script er her ->
- function build_menu ( $menu )
- {
-
- $out= "\n";
-
- for ( $i = 1; $i <= count ( $menu ); $i++ )
- {
- if ( is_array ( $menu [ $i ] ) ) {
- if ( $menu [ $i ] [ 'show_condition' ] && $menu [ $i ] [ 'parent' ] == "y" ) {
- $out .= '<li>';
- if($menu [ $i ] [ 'link' ] == $_SERVER['REQUEST_URI']){
- $out .= '<a href="' . $menu [ $i ] [ 'link' ] . '" class="act"><span>';
- $out .= $menu [ $i ] [ 'text' ];
- $out .= '</span></a>';
- }else{
- $out .= '<a href="' . $menu [ $i ] [ 'link' ] . '"><span>';
- $out .= $menu [ $i ] [ 'text' ];
- $out .= '</span></a>';
- }
- $out .= get_childs ( $menu, $i );
- $out .= '</li>' . "\n";
- }
- }
- else {
- die ( sprintf ( 'Menu nr %s skal være en array', $i ) );
- }
- }
-
- $out .= '';
- $out .= "";
- return $out . "\n\t" . '';
- }
-
- function get_childs ( $menu, $el_id )
- {
- $has_subcats = FALSE;
- $out = '';
- $out .= "\n".' <ul>' . "\n";
- for ( $i = 1; $i <= count ( $menu ); $i++ )
- {
- if ( $menu [ $i ] [ 'show_condition' ] && $menu [ $i ] [ 'parent' ] == $el_id ) {
- $has_subcats = TRUE;
-
- if($menu [ $i ] [ 'link' ] == "?".$_SERVER['QUERY_STRING']){
- $out .= '<li class="sub-current-li">';
- $out .= '<a href="' . $menu [ $i ] [ 'link' ] . '" class="sub-current"><span>';
- $out .= $menu [ $i ] [ 'text' ];
- $out .= '</span></a>';
- }else{
- $add_class = ( get_childs ( $menu, $i ) != FALSE ) ? ' subsubl' : '';
- $out .= '<li class="' . $menu [ $i ] [ 'class' ] . $add_class . '">';
- $out .= '<a href="' . $menu [ $i ] [ 'link' ] . '"><span>';
- $out .= $menu [ $i ] [ 'text' ];
- $out .= '</span></a>';
- }
- $out .= get_childs ( $menu, $i );
- $out .= '</li>' . "\n";
- }
- }
- $out .= ' </ul>'."\n";
- return ( $has_subcats ) ? $out : FALSE;
- }
Og så for at vise menuen bruges der <?=build_menu($menu)?>
Og pt. istedet for mysql skriver jeg det ind f.eks.
$menu = array
(
1 => array
(
'text' => 'Forside',
'class' => 'home',
'link' => '/rob/forside',
'show_condition'=> TRUE,
'parent' => 0,
),
2 => array
(
'text' => 'Virksomheder',
'class' => 'industri',
'link' => '/rob/virksomheder',
'show_condition'=> TRUE,
'parent' => 0,
),
3 => array
(
'text' => 'Jobsøgende',
'class' => 'areas',
'link' => '/rob/fagområder',
'show_condition'=> TRUE,
'parent' => 0,
),
);
Indlæg senest redigeret d. 05.01.2009 10:33 af Bruger #13723