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 PHP Conditionals Operators

Yuma Corporation
PLUS
Yuma Corporation
Courses Plus Student 4,361 Points

create a SINGLE conditional statement around the echo command thatchecks: That a $username that user $role is not admi

Without changing the variables, create a SINGLE conditional statement around the echo command that checks: That a $username is set. The users $role is NOT admin

index.php
<?php
$username = 'sketchings';
//Available roles: author, editor, admin
$role = 'editor';
if ($username != 'sketchings' && $role!= 'admin'){
  echo 'no user selected, You do not have access to this page. Please contact your administrator.';
}else{
  echo 'That a $username is set ';
}

/*if($role!= 'admin'){

//add conditional statement
echo "You do not have access to this page. Please contact your administrator.";
}else {
  echo'welcome';
}*/

?>

5 Answers

Kieran Barker
Kieran Barker
15,028 Points

This is the conditional statement you need:

if ( isset( $username ) && $role != 'admin' ) {
  echo "You do not have access to this page. Please contact your administrator.";
}

You need to use the isset() function to check if the $username variable is set, and the negation != operator to check that the $role variable is not equal to the string admin, as you've already done.

I hope this helps :-)

Yuma Corporation
PLUS
Yuma Corporation
Courses Plus Student 4,361 Points

if(!$username || $role !=admin ){ echo "You do not have access to this page. Please contact your administrator."; }

Kieran Barker
Kieran Barker
15,028 Points

This won't work, because the condition is checking if either $username or $role is not equal to 'admin'. Plus, the string admin isn't enclosed in quote marks. The code I posted is exactly what you need :-)

Yuma Corporation
PLUS
Yuma Corporation
Courses Plus Student 4,361 Points

didn't work... This was what worked if ($username && $role !=admin ){ echo "You do not have access to this page. Please contact your administrator."; }

Sameh Edward
Sameh Edward
4,572 Points

if ($username == 'sketchings' && $role!= 'admin'){ echo "You do not have access to this page. Please contact your administrator.";}else{ echo 'That a $username is Not admin '; }