views:

63

answers:

1

I suppose there should be a way to set a cookie to be accessible from the entire domain nevermind from which directory you are setting the cookie.

Say in mypage.com/blue/index.php y set the cookie "colour=blue;" this way:

document.cookie = "colour" + "=" + "blue" 
    + "; expires=" + expireDate.toGMTString() 
    + "; path=/";

Using this code, the cookie retrieval function in mypage.com/home.php can't access the content of the cookie.

If it was just from first level directories that the cookie needs to be set, we would be ok by doing path=../ instead of path=/

But how do you go about writing generic code that sets a cookie that is accessible from any page in that domain not minding how deep in the file structure is the page the cookie is being set from?

+2  A: 

Use path just like you did, but set an additional ;-delimited attribute "domain". If you start the domain value with a . it will allow any subdomains (.example.com would effectively allow *.example.com).

Full documentation for the various cookie options here

teepark
IE differs in the treatment of the DOMAIN attribute: http://blogs.msdn.com/ieinternals/archive/2009/08/20/WinINET-IE-Cookie-Internals-FAQ.aspx
Marcel Korpel