I've recently had a problem with sessions, and came up with a problem that 
apparently has no solution...

I want to understand why EXACTLY it does't work...

 From what I understand about sessions (reading PHP Docs), cookies are 
default and URLs holding the session_id are used if the cookies can be used 
to get the current session_id right?

So if, there's a cookie indicating a session, PHP will detect it and the 
session will work beatifully..
If when a session is created, a cookie cannot be set, then the URLs come 
into play.. right?

-- I'm I right so far? --

So, I can only presume, that whenever I can see those URLs with 
session_ids, this means that no cookie was created... and if one of those 
URLs is clicked, the session will persist, since the URL is carrying the 
session_id.

Well, now to the problem with no solution... I've described it here on the 
list a couple of times... sorry if this is getting too annoying.

1 - I have a PHP script, that uses sessions, it's called miec.php
      miec.php uses both cookies and sessions... the cookie holds the 
user_id and the session holds an array of every
      product the user has seen, so they won't repeat... of course, the 
session only gets initialized if the cookie with the
      user id is found... if not, a login form is shown...
2 - I have a html file, demo.shtml, which with SSI includes miec.php
      The inclusion works fine, even the cookie with the user id gets 
detected and the username is shown as expected

Now, the problem. If I run miec.php solo on the browser, everything works 
perfectly.
But if I call demo.shtml, something goes wrong, and I want to know what.

When demo.shtml is called, the cookie works (the user id is detected) and 
the session gets started. I can see the URLs with the session id AND the 
session file in my webserver. The problem is that, the session doesn't 
persist, each time I reload demo.sthml, a new session is created.

Now get this... if I call miec.php and then demo.shtml, everything works. 
Why? My guess is, miec.php running solo is able to create the cookie with 
the session id, while when SSI included it can't, which explain the URLs.

Obviously, URLs (example: demo.shtml?sID=3897348734) aren't helpful here, 
since it's a html file, and it can't parse the query string to send the 
variable to an SSI included php file.

But why the cookie can't be created? Headers aren't the problem... if a 
session can be created and the session vars registered it's because the 
headers have not been sent, so why can't a cookie be created in this 
conditions.

Does anyone has a clue??

p.s: the problem is solved, I force the user to login in case of miec.php 
is SSI included, which works, since the session is created elsewhere 
(login.php).

_____________________________
. Christian Dechery
. . Gaita-L Owner / Web Developer
. . http://www.webstyle.com.br
. . http://www.tanamesa.com.br


-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]

Reply via email to