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

PHP Arrays and Control Structures - SWITCH

I keep getting this error:

Bummer: I do not see the correct output for admin. Did you leave off a "break"?

Here is the question:

In the code provided, there are two if statements. The second if statement displays a message IF the user role is not equal to "admin". We want to display separate messages based on the role of the logged in user. First we're going to add a message for our admin and keep the current message as the default.

Step 1: Change the second if statement to a switch statement

Step 2: Keep the current message as the default.

Step 3: Add a second check to the switch statement for the role of "admin" and display the following message:

As an admin, you can add, edit, or delete any post.

My code:

<?php
//Available roles: admin, editor, author, subscriber
if (!isset($role)) {
    $role = 'subscriber';
}

//change to switch statement
switch ($role) {
    case 'admin':
    echo "As an admin, you can add, edit, or delete any posts.";
         break;
    case 'editor':
    echo "As an editor, you can add or edit any post, and delete your own posts.";
         break; 
    case 'author':
    echo "As an author, you can add, edit, or delete your own post.";
         break;     
  default:      
    echo "You do not have access to this page. Please contact your administrator.";

      }
?>

Please explain my error if/when you find it.

Thank you.

1 Answer

Hello Shari Staten,

Your issue is just a typo in a string printing for admin.

The challenge says to print "As an admin, you can add, edit, or delete any post.", However you are printing "As an admin, you can add, edit, or delete any posts.". If you cannot see the difference, "post" is supposed to be singular, not plural.

Also in future, please use the "Get Help" button on the challenge, so we can view challenge without having to find the challenge, I found the one you were talking about, but took longer than the rest of people asking for help using the button.

Thanks for the heads up! I'll keep that in mind. And, thanks for your help. I was able to pass the challenge.