PHP Session Id changes between pages

php, session

Solution

According to PHP documentation, `session_start` must be called before any output is sent back to the browser-- could this page have a rogue CR/LF, Unicode byte-order mark or similar that is causing output before you `include('session-inc.php')`?

Problem

I have a problem where i am losing the PHP session between 2 pages. The session_start() is included in a file called session-inc.php into every page requiring a session to be set. This works for all pages on the site except one particular page, member-profile.php. When this page is visited a new session with a different id (same session name) is set and used instead. A few more details: - Session name is set manually - All pages are on the same server under the same domain name - If i put an additional session_start() above the include('session-inc.php') in the member-profile.php file, the session is carried over correctly - I have tried setting the session_cookie_domain and session.session_name in the .htaccess, this worked for this domain but it stopped the session being passed over to out payment domain - We are running apache 2.2.6 with php 5.2.5 Putting the session_start() above the include('session-inc.php') in the member-profile.php file is the quick and dirty fix for this problem, but i am wondering if anybody know why this would be happening. Cheers Will

Original source

Related problems