0

I have an approve.php inside an /include directory. I have another file inside the /pop_up directory.

Approve.php

if (!isset($_SESSION['username'])) {
	header("location:log_in.php");
	die();
}

When i run the include('include/approve.php') code in files in the main directory, it works. When I run the include('../include/approve.php') in files in the pop_up/ directory it seems to always find that $_SESSION is not set.

Any suggestions?

4
Contributors
5
Replies
6
Views
5 Years
Discussion Span
Last Post by shah01
0

By default, sessions and cookies start at the root path of the file that created it and all lower sub-folders. Either move your session script at least as high as your other scripts that need it or try to change your session location with session_save_path .

0

Is there a way to set it to where they can all access session? I create the session in /include, but I need /include and /pop_up to be able to access it.

0

ALL files must have a session_start() in them (or in their include files) if session variables can be got at.

I assume the popup files (or the files included in them) do not have a session_start().

//EDIT reading that back I don't know if it makes sense.

Best thing to do perhaps is place session_start() at the top of each main file. You don't need session_start in include files if it's already been declared in the main file.

Edited by diafol: n/a

0

thanks. that would not be the first time I have missed that.

This question has already been answered. Start a new discussion instead.
Have something to contribute to this discussion? Please be thoughtful, detailed and courteous, and be sure to adhere to our posting rules.