Jump to content

PHP expanding navigation menu


angelac

Recommended Posts

I'm looking for a PHP expanding navigation menu.  I want to use it in my pages using an include but I can't seem to find one that stays expanded on certain pages to let visitors choose from the submenus that apply to that page. 

Example: if someone visits the About Us page, I want the submenus to stay expanded so they can still choose from them without having to click About Us to expand the menu again.

Home
About Us
  Who we are
  Another Submenu
Contact Us
Visit Us

I don't want any JavaScript but CSS is good.  Any ideas?
Link to comment
Share on other sites

I'm looking for a menu just like this:

http://www.indiana.edu/%7Ecareer/students/more/

The one on the left.  As you click on a link, the page changes and submenus are displayed.  A visitor can also tell what section they are in by looking at this menu.  I'd like something like that but I don't want to use Javascript, I know that they did in this one. 

I have one very similar to this here: http://mprirecdiv.com/php/submenu.php but I'm not sure how to keep it stuck once a user visits another page.  If I'm using an include, the menu always resets.
Link to comment
Share on other sites

Just use if statements.

[code]
<?php
$page = 'home';

echo '<a href="home.php">Home</a>';
if($page == 'home')
{
echo '<a href="link1.php">Link 1</a>';
echo '<a href="link2.php">Link 2</a>';
echo '<a href="link3.php">Link 3</a>';
}

echo '<a href="about.php">About Us</a>';
if($page == 'about')
{
echo '<a href="link1.php">Link 1</a>';
echo '<a href="link2.php">Link 2</a>';
echo '<a href="link3.php">Link 3</a>';
}

[/code]
Link to comment
Share on other sites

I'm not sure that would work in my code:

<?php
    $headers = array(               
            'COMPANY HEADQUARTERS' => 'submenu.php?s=1',               
            'BELLE HAVEN' => 'submenu.php?s=2',               
            'DOVER' => 'submenu.php?s=3',
            'EASTON' => 'submenu.php?s=4',
            'ELKTON' => 'submenu.php?s=5',
            'GEORGETOWN' => 'submenu.php?s=6',
            'NEWARK' => 'submenu.php?s=7',
            'SALISBURY' => 'submenu.php?s=8',
            'WILMINGTON' => 'submenu.php?s=9',
            );

    $sub_1 = array(
            'Recruiters' => 'http://usarmy-delmarva.com',
            'Future Soldiers' => 'http://usarmy-delmarva.com',
            'Schools' => 'http://usarmy-delmarva.com',
            'News/Events' => 'http://usarmy-delmarva.com',
            'Army Reserve Units' => 'http://usarmy-delmarva.com',
            );

    $sub_2 = array(         
            'Recruiters' => 'http://usarmy-delmarva.com',
            'Future Soldiers' => 'http://usarmy-delmarva.com',
            'Schools' => 'http://usarmy-delmarva.com',
            'News/Events' => 'http://usarmy-delmarva.com',
            'Army Reserve Units' => 'http://usarmy-delmarva.com',
            );

  $sub_3 = array(         
            'Recruiters' => 'http://usarmy-delmarva.com',
            'Future Soldiers' => 'http://usarmy-delmarva.com',
            'Schools' => 'http://usarmy-delmarva.com',
            'News/Events' => 'http://usarmy-delmarva.com',
            'Army Reserve Units' => 'http://usarmy-delmarva.com',
            );
    $sub_4 = array(         
            'Recruiters' => 'http://usarmy-delmarva.com',
            'Future Soldiers' => 'http://usarmy-delmarva.com',
            'Schools' => 'http://usarmy-delmarva.com',
            'News/Events' => 'http://usarmy-delmarva.com',
            'Army Reserve Units' => 'http://usarmy-delmarva.com',
            );
    $sub_5 = array(         
            'Recruiters' => 'http://usarmy-delmarva.com',
            'Future Soldiers' => 'http://usarmy-delmarva.com',
            'Schools' => 'http://usarmy-delmarva.com',
            'News/Events' => 'http://usarmy-delmarva.com',
            'Army Reserve Units' => 'http://usarmy-delmarva.com',
            );
    $sub_6 = array(         
            'Recruiters' => 'http://usarmy-delmarva.com',
            'Future Soldiers' => 'http://usarmy-delmarva.com',
            'Schools' => 'http://usarmy-delmarva.com',
            'News/Events' => 'http://usarmy-delmarva.com',
            'Army Reserve Units' => 'http://usarmy-delmarva.com',
            );
    $sub_7 = array(         
            'Recruiters' => 'http://usarmy-delmarva.com',
            'Future Soldiers' => 'http://usarmy-delmarva.com',
            'Schools' => 'http://usarmy-delmarva.com',
            'News/Events' => 'http://usarmy-delmarva.com',
            'Army Reserve Units' => 'http://usarmy-delmarva.com',
            );
    $sub_8 = array(         
            'Recruiters' => 'http://usarmy-delmarva.com',
            'Future Soldiers' => 'http://usarmy-delmarva.com',
            'Schools' => 'http://usarmy-delmarva.com',
            'News/Events' => 'http://usarmy-delmarva.com',
            'Army Reserve Units' => 'http://usarmy-delmarva.com',
            );
    $sub_9 = array(         
            'Recruiters' => 'http://usarmy-delmarva.com',
            'Future Soldiers' => 'http://usarmy-delmarva.com',
            'Schools' => 'http://usarmy-delmarva.com',
            'News/Events' => 'http://usarmy-delmarva.com',
            'Army Reserve Units' => 'http://usarmy-delmarva.com',
            );     
 

foreach ( $headers as $key => $value ) {
        echo "<tr class='mainmenu'><td><a href='$value'>$key[/url]</td></tr>";
        if (($key == "COMPANY HEADQUARTERS") && ($s == "1")) {
                foreach ( $sub_1 as $key => $value ) {
                        echo "<tr class='submenu'><td><a href='$value'>$key[/url]</td></tr>";
                }

        }
        if (($key == "BELLE HAVEN") && ($s == "2")) {
                foreach ( $sub_2 as $key => $value ) {
                        echo "<tr class='submenu'><td><a href='$value'>$key[/url]</td></tr>";}
        }


        if (($key == "DOVER") && ($s == "3")) {
                foreach ( $sub_3 as $key => $value ) {
                        echo "<tr class='submenu'><td><a href='$value'>$key[/url]</td></tr>";}
        }

      if (($key == "EASTON") && ($s == "4")) {
                foreach ( $sub_4 as $key => $value ) {
                        echo "<tr class='submenu'><td><a href='$value'>$key[/url]</td></tr>"; }
        }
 
      if (($key == "ELKTON") && ($s == "5")) {
                foreach ( $sub_5 as $key => $value ) {
                        echo "<tr class='submenu'><td><a href='$value'>$key[/url]</td></tr>"; }
        }


      if (($key == "GEORGETOWN") && ($s == "6")) {
                foreach ( $sub_6 as $key => $value ) {
                        echo "<tr class='submenu'><td><a href='$value'>$key[/url]</td></tr>"; }
        }
     
        if (($key == "NEWARK") && ($s == "7")) {
                foreach ( $sub_6 as $key => $value ) {
                        echo "<tr class='submenu'><td><a href='$value'>$key[/url]</td></tr>";}
        }
     
        if (($key == "SALISBURY") && ($s == "8")) {
                foreach ( $sub_6 as $key => $value ) {
                        echo "<tr class='submenu'><td><a href='$value'>$key[/url]</td></tr>";}
        }
     
        if (($key == "WILMINGTON") && ($s == "9")) {
                foreach ( $sub_6 as $key => $value ) {
                        echo "<tr class='submenu'><td><a href='$value'>$key[/url]</td></tr>";}
        }
     
  }     
?>
Link to comment
Share on other sites

This thread is more than a year old. Please don't revive it unless you have something important to add.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.