PHP PHP Arrays and Control Structures PHP Conditionals Switch Statements

switch

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. PLEASE HELP!

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

//change to switch statement
if ($role != 'admin') {
    echo "You do not have access to this page. Please contact your administrator.";
}

1 Answer

If you are to benefit a lot from these code challenges and I would advise giving them ago first and then posting what you tried. If you do that then we can see exactly what you were struggling with and explain rather than just providing an answer. If you ever forget what any of the statements do, have a look at w3schools for a reminder and to see some examples.

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

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

thank you will surely do that