PHP PHP Arrays and Control Structures PHP Conditionals Switch Statements

Siraj Khan
Siraj Khan
3,451 Points

What is wrong with my code.? Can anyone help please.

What is wrong with my code.? Can anyone help please. It either says "I do not see the correct default output." OR "I do not see a case for admin."

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

//change to switch statement
$role = "admin";
$messageBody = "";


switch($role){ 


    case "admin" :
      $messageBody = "As an admin, you can add, edit, or delete any post.";
      break;  
  default:
      $messageBody = "You do not have access to this page. Please contact your administrator.";
      break;

 }              

echo $messageBody;

?>

1 Answer

Patricia Hector
Patricia Hector
40,132 Points

Hi there :

You need to remove the declaration of $role="admin"; for me, it seems to be interfering with the test cases they may send to your code. The other error is in the line case "admin" : ; you cannot have spaces between admin and the colon. The space situation may even pass in a regular text editor, but the treehouse one is very strict with spaces, tabs and line breaks, which I think is a good thing in a long run; it helps you to be updated with good practices. After these little changes your code will run.

Ciao.