views:

27

answers:

2

Hello,

I'm kind of a website development nub so bear with me.

My problem is that the website php session doesn't seem to be set when I log in to my website. After ensuring that the username and password are correct, I have the following simple code:

session_start();
$_SESSION['username'] = $myusername;
$_SESSION['password'] = $mypassword;

Content that should display after logging in is not displayed.

For example:

if(isset($_SESSION['username'])){
echo "<a class=\"logout\" href=\"logout.php\"><img      src=\"Images\logout_button.png\"></a>";
} 
else{
echo "<a class=\"login\" href=\"main_login.php\"><img src=\"Images\login_button.png\"></a>";
}

The login button is always visible.

Thanks in advance,

Matt

+2  A: 

You need to start the session before you set the session variables. session_start() should be the first thing that runs.

Ólafur Waage
Thanks for that. It's still not working though.
Matt
moved session_start() to beginning
Matt
A: 

You must have session_start() on every page that needs the session variables. Do you have session_start() on the page with the login/logout links?

Emil Vikström
Aha! That, along with Olafur's answer, fixed it. Thanks.
Matt