Skip to main content

bagaimana caranya memunculkan sub menu

November 30, 2010 by fireflies

fireflies's picture

Saya ingin menampilkan hasil output seperti dibawah ini

  • Weblog Tools
  • Programming Languages
  • Marco's blog (no submenu)
  • Cool Stuff
  • Search Engines
  • yang pertama saya lakukan membuat database
    I have Create Database
    CREATE TABLE `sidepanelmenu` (
    `ID` int(11) NOT NULL auto_increment,
    `NameMenu` varchar(50) NOT NULL,
    `AnchorMenu` varchar(255) NOT NULL default â€#’,
    `NameSubMenu` varchar(50) default NULL,
    `AnchorSubMenu` varchar(255) default NULL,
    PRIMARY KEY (`ID`)
    ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=17 ;

    yang kedua saya masukkan data ke dalam database

    Database sidepanelmenu
    id NameMenu AnchorMenu NameSubMenu AnchorSubMenu
    1 Weblog Tools # Pivot X http://www.pivotx.net
    2 Weblog Tools # Wordpress http://www.wordpress.org
    3 Weblog Tools # Text Pattern http://www.textpattern.com
    4 Weblog Tools # Typo http://www.typoshare.com
    5 Programming Language # php http://www,php.net
    6 Programming Language # Ruby http://www.ruby-lang.org/en/
    7 Programming Language # Python http://www.python.org
    8 Programming Language # Java http://java.sun.com
    9 Programming Language # C# http://en.wikipedia.org/wiki/c_sharp
    10 User Blog http://www.i-macro.ol/weblog NULL NULL
    11 Cool Stuff # Apple http://www,apple.com
    12 Cool Stuff # Nikon http://www.nikon.com
    13 Cool Stuff # XBOX 360 http://www.xbox.com/en-us/
    14 Cool Stuff # Nintendo http://www.nintendo.com
    15 Search Engine # Yahoo http://search.yahoo.com
    16 Search Engine # Google http://www,google.com

    yang ketiga membuat model

    class DBSidePanel extends Model
    {
      function getNamaMenu()
      {
        $query = $this->db->query(“SELECT DISTINCT(NameMenu),AnchorMenu FROM SidePanelMenu”);
        if($query->num_rows() > 0)
        {
        foreach ($query->result() as $row)
        {
        $data[] = $row;
        }
        return $data;
        }
      }
    }

    yang keempat membuat controller

    controller

    class Welcome extends Controller {

    function Welcome()
    {
    parent::Controller();
    }
    function index()
    {
    $this->load->model(â€DBSidePanel’);
    $data[â€record’]= $this->DBSidePanel->getNamaMenu();
    $this->load->view(â€template/PanelSide’,$data);
    }
    }

    yang kelima membuat view

    Sekarang yg saya tanyakan bagaimana memunculkan sub menu

    Comments

    Comment viewing options

    Select your preferred way to display the comments and click "Save settings" to activate your changes.

    Bikin Menu dan SubMenu

    December 10, 2010 by harisbag, 2 weeks 4 days ago
    Comment: 7464

    harisbag's picture

    Mungkin kode berikut bisa membantu.
    Ini kode pada file view anda:

    $menu = ''; $tutupList=0;
     
    echo '<ul>';
    foreach ($record->result() as $row)
    {
        if($menu!=$row->NameMenu){
    	if($tutupList==1){
    	    echo '</ul>'; 
    	    echo '</li>';
    	    $tutupList=0;
    	}
        	echo '<li><a href="'.$row->AnchorMenu.'" >'.$row->NameMenu.'</a>';
    	echo '<ul>';
    	echo '<li><a href="'.$row->AnchorSubMenu.'" >'.$row->NameSubMenu.'</a></li>';
    	$menu=$row->NameMenu;
    	$tutupList=1;
        }else
        {
    	echo '<li><a href="'.$row->AnchorSubMenu.'" >'.$row->NameSubMenu.'</a></li>';
        }	
    }
    echo '</ul>';
    echo '</li>';
    echo '</ul>';

    Sedangkan untuk modelnya (pada fungsi GetNamaMenu), query saya rubah menjadi SELECT * FROM sidepanelmenu. (Memanggil semua data)
    lengkapnya sebagai berikut:
    function getNamaMenu()
      {
        $query = $this->db->query(“SELECT * FROM SidePanelMenu”);
        if($query->num_rows() > 0)
        {
            return $query;
        }else
        {
    	return FALSE;
        }
      }

    Catatan:
    Inti kode pada file View diatas sebenarnya memilah mana menu dan mana sub menu. Selanjutnya membuat List dan Sub List yang berisi link.
    Semoga bisa membantu pencerahan. Mohon maaf bila ada kesalahan. msh newbie jg :)

    Premium Drupal Themes by Adaptivethemes