PHP Build a Basic PHP Website Building a Media Library in PHP Adding Active States to the Navigation

underline doesn't work

I did everything right I don't know where is my mistake can anyone help, please?

<?php $pageTitle = "full catalog"; $section = null;

if (isset($GET["cat"])) { if ($_GET["cat"] == "books"){ $pageTitle="books"; $section = "books"; } else if ($_GET["cat"] == "movies"){ $pageTitle = "movies"; $section = "moives"; } else if ($_GET["cat"] == "music"){ $pageTitle = "music"; $section = "music"; } }

include("inc/header.php"); ?>

<div class="section page"> <h1><?php echo $pageTitle; ?></h1> </div>

<?php include("inc/footer.php"); ?>

<ul class="nav"> <li class="books <?php if (isset($section) && $section == "books") { echo "on"; } ?>"><a href="catalog.php?cat=books">Books</a></li> <li class="movies <?php if ($section == "moives") { echo "on"; } ?>"><a href="catalog.php?cat=movies">Movies</a></li> <li class="music <?php if ($section == "music") { echo "on"; } ?>"><a href="catalog.php?cat=music">Music</a></li> <li class="suggest <?php if ($section == "suggest") { echo "on"; } ?>"><a href="suggest.php">Suggest</a></li> </ul>

1 Answer

Niki Molnar
Niki Molnar
23,312 Points

Hi Naif

Most of your $_GET["cat"] don't have the underscore (you have $GET["cat"]) - the only one where it is correct (movies), you misspelt "movies" as "moives" in the $section="moives"; code.

The correct code is:

if (isset($_GET["cat"])) {
    if ($_GET["cat"] == "books") {
        $pageTitle = "Books";
        $section = "books";
    } else if ($_GET["cat"] == "movies") {
        $pageTitle = "Movies";
        $section = "movies";
    } else if ($_GET["cat"] == "music") {
        $pageTitle = "Music";
        $section = "music";
    }
}

Hope that helps!

Niki

Thank you so much appreciate it :)