PHP PHP Arrays and Control Structures PHP Conditionals Switch Statements

JA Armira
JA Armira
1,609 Points

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

This is my code, i cannot see anything wrong with it!! <?php //Available roles: admin, editor, author, subscriber if (!isset($role)) { $role = 'subscriber'; }

//change to switch statement //if ($role != 'admin') switch ($role) { case 'admin': echo 'As an admin, you can add, edit, or delete any post.'; break;
case 'editor': echo "As and 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."; break; }

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

//change to switch statement
//if ($role != 'admin')
switch ($role) {
  case 'admin':
    echo 'As an admin, you can add, edit, or delete any post.';
    break;    
  case 'editor':
    echo "As and 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.";
    break;
}

3 Answers

KRIS NIKOLAISEN
KRIS NIKOLAISEN
53,479 Points

You have a typo for editor

"As and editor

should be

"As an editor
JA Armira
JA Armira
1,609 Points

I cannot believe it!! Thanks!!

Liam Clarke
MOD
Liam Clarke
Treehouse Moderator 19,701 Points

Hi JA

your code is correct with a spelling mistakes that is breaking your code, look at the value you echo for case "editor", it should be "As an" not "As and"

Treehouse's picky compiler :) the below passes

<?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 post.";
    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.";
}

Good Luck