Welcome to the Treehouse Community

Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.

Start your free trial

PHP Build a Basic PHP Website (2018) Listing and Sorting Inventory Items Displaying All Items

Arturo Espinoza
Arturo Espinoza
9,181 Points

To many images in a catalog

When viewing a specific catalog (books for example) I am supposed to be shown only images pertaining to that category. But instead, all books, movies, and music appear. Can someone take a look at the code and see where I went wrong please.

https://teamtreehouse.com/library/build-a-basic-php-website/listing-and-sorting-inventory-items/displaying-all-items

<?php 

include("inc/data.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 catalog page">
    <div class="wrapper">
        <h1><?php echo $pageTitle; ?></h1>

        <ul class="items">
            <?php 
            foreach ($catalog as $item) {
                echo "<li><a href'#'><img src='" 
                    . $item["img"] . "' alt='"
                    . $item["title"] . "' />"
                    . "<p>View details</p>"
                    . "</a></li>";
            }
            ?>
        </ul>
    </div>
</div>
<?php include("inc/footer.php"); ?>

1 Answer

Jose Vaca Cipres
Jose Vaca Cipres
10,724 Points

That is because you are displaying all the images whatever happens because you don't "receive" a $_GET and you don't evaluate (with IF Conditional) the category for Books, Movies and Music.