PHP Build a Basic PHP Website Listing and Sorting Inventory Items Breadcrumbs

My Catalog pages won't load. catalog.php catalog.php?cat=books catalog.php?cat=movies catalog.php?cat=music

After this episode i can't access the Catalog.php page or subcategories.

Catalog.php
<div class="section catalog page">

  <div class="wrapper">

    <h1><?php 
    if ($section != null) {
      echo "<a href='catalog.php'>Full Catalog</a> &gt; ";
    }
    echo $pageTitle; ?></h1>

    <ul class="items">
      <?php
         $categories = array_category($catalog,$section);
         foreach($categories as $id) {
            echo get_item_html($id,$catalog[$id]);
         }
      ?>
    </ul>
  </div>

</div>
<?php include("inc/footer.php"); ?>
Details.php
<?php 
include ("inc/data.php");
include ("inc/functions.php");

if(isset($_GET["id"])) {
  $id = $_GET["id"];
  if (isset($catalog[$id])) {
      $item = $catalog[$id];
  }
}

if (!isset($item)) {
    header("location:catalog.php");
    exit;
}

$pageTitle = $item["title"];
$section = null;

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

<div class="section page">

  <div class="wrapper">'''

    <div class="breadcrumbs">
      <a href="catalog.php">Full Catalog</a>
      &gt; <a href="catalog.php?cat=<?php echo $item["category"]; ?>">
      <?php echo $item["category"]; ?></a>
      &gt; <?php echo $item["title"]; ?>
    </div>

      <div class="media-picture">

      <span>
        <img src="<?php echo $item["img"]; ?>" alt="<?php echo $item["title"]; ?>" />
      </span>

      </div>

      <div class="media-details">

          <h1><?php echo $item["title"]; ?></h1>
          <table>

            <tr>
              <th>Category</th>
              <td><?php echo $item["category"]; ?></td>
            </tr>
            <tr>
              <th>Genre</th>
              <td><?php echo $item["genre"]; ?></td>
            </tr>
            <tr>
              <th>Format</th>
              <td><?php echo $item["format"]; ?></td>
            </tr>
            <tr>
              <th>Year</th>
              <td><?php echo $item["year"]; ?></td>
            </tr>
            <?php if (strtolower($item["category"]) == "books") { ?>
            <tr>
              <th>Authors</th>
              <td><?php echo implode(", ",$item["authors"]); ?></td>
            </tr>
            <tr>
              <th>Publisher</th>
              <td><?php echo $item["publisher"]; ?></td>
            </tr>
            <tr>
              <th>ISBN</th>
              <td><?php echo $item["isbn"]; ?></td>
            </tr>
            <?php } else if (strtolower($item["category"]) == "movies") { ?>
            <tr>
              <th>Director</th>
              <td><?php echo $item["director"]; ?></td>
            </tr>
            <tr>
              <th>Writers</th>
              <td><?php echo implode(", ",$item["writers"]); ?></td>
            </tr>
            <tr>
              <th>Stars</th>
              <td><?php echo implode(", ",$item["stars"]); ?></td>
            </tr>
            <?php } else if (strtolower($item["category"]) == "music") { ?>
            <tr>
              <th>Artist</th>
              <td><?php echo $item["artist"]; ?></td>
            </tr>

            <?php } ?>
          </table>

      </div>

  </div>

</div>
Rich Donnellan
Rich Donnellan
Treehouse Moderator 25,634 Points

Question updated with code formatting. Check out the Markdown Cheatsheet below the Add an Answer submission for syntax examples.

1 Answer

Hi it looks like you havent "include"(d) the data or the function php files, $pagetitle variables or section variables either or header php files to start with.