This is a discussion on Anyone for cookies and milk? :-) within the PHP General forums, part of the PHP Programming Forums category; Hey, Am just getting into PHP cookies and have gotten a problem...(surprise surprise) Am trying to set a basic ...
|
|||||||
| FAQ | Members List | Calendar | Search | Today's Posts | Mark Forums Read |
|
|||
|
Hey,
Am just getting into PHP cookies and have gotten a problem...(surprise surprise) Am trying to set a basic cookie to see exactly how things work before I start using it in my apps, heres the code i am using: (SetCookieEx.php) <?php setcookie("name1","1","","",".bestwebhosters.com") ; setcookie("name2","1","","",".bestwebhosters.com") ; echo "done"; ?> This is the output I am getting: ********************** Warning: setcookie() expects parameter 3 to be long, string given in /bestweb/public_html/testing/SetCookieEx.php on line 2 Warning: setcookie() expects parameter 3 to be long, string given in /bestweb/public_html/testing/SetCookieEx.php on line 3 done This is how I am trying to read the cookies: (ReadCookieEx.php) **************************** <?php if (isset($_COOKIE ['name1'])){ echo $_COOKIE ['name1']; }else{echo "wrong1";} if (isset($_COOKIE ['name2'])){ echo $_COOKIE ['name2']; }else{echo "wrong2";} ?> This is the output i am getting: ******************* wrong1wrong2 Anybody have any ideas? Cheers, -Ryan |
|
|||
|
--- Ryan A <ryan@jumac.com> wrote:
> Am just getting into PHP cookies and have gotten a problem...(surprise > surprise) > > Am trying to set a basic cookie to see exactly how things work before I > start using it in my apps, heres the code i am using: > (SetCookieEx.php) > <?php > setcookie("name1","1","","",".bestwebhosters.com") ; > setcookie("name2","1","","",".bestwebhosters.com") ; I can never remember the attribute order for setcookie without looking it up, and I prefer to just use header() to set my own Set-Cookie header. A simple example for just testing things would go something like this: header('Set-Cookie: foo=bar'); Hope that helps. Chris ===== Become a better Web developer with the HTTP Developer's Handbook http://httphandbook.org/ |
|
|||
|
Ryan A <ryan@jumac.com> wrote:
> Hey, > Am just getting into PHP cookies and have gotten a problem...(surprise > surprise) > > Am trying to set a basic cookie to see exactly how things work before I > start using it in my apps, heres the code i am using: > (SetCookieEx.php) > <?php > setcookie("name1","1","","",".bestwebhosters.com") ; > setcookie("name2","1","","",".bestwebhosters.com") ; > > echo "done"; > ?> > > This is the output I am getting: > ********************** > Warning: setcookie() expects parameter 3 to be long, string given in > /bestweb/public_html/testing/SetCookieEx.php on line 2 > > Warning: setcookie() expects parameter 3 to be long, string given in > /bestweb/public_html/testing/SetCookieEx.php on line 3 > done te> <quote site=php> bool setcookie ( string name [, string value [, int expire [, string path [, string domain [, int secure]]]]]) [...] All the arguments except the name argument are optional. You may also replace an argument with an empty string ("") </quote> at first look this appears to be a bug. but I have a fealing its only cause your error_reporting is set to E_ALL thus a warning is shown because the third paramater should be a interger so change it to: setcookie("name2","1",0,"",".bestwebhosters.com"); mabey documentation should be changed. > > This is how I am trying to read the cookies: (ReadCookieEx.php) > **************************** > <?php > if (isset($_COOKIE ['name1'])){ > echo $_COOKIE ['name1']; > }else{echo "wrong1";} > > if (isset($_COOKIE ['name2'])){ > echo $_COOKIE ['name2']; > }else{echo "wrong2";} > ?> > > This is the output i am getting: > ******************* > wrong1wrong2 hmm.. few things: 1. is your setcookie returning true or false? 2. have you examined (or even see the cookie get set) the actual cookie to see 3. good reading for intro to cookies for programmers: http://wp.netscape.com/newsref/std/cookie_spec.html > > > > Anybody have any ideas? > > Cheers, > -Ryan > Curt -- |
|
|||
|
From the official doc:
http://www.php.net/manual/en/function.setcookie.php All the arguments except the name argument are optional. You may also replace an argument with an empty string ("") in order to skip that argument. Because the expire and secure arguments are integers, they cannot be skipped with an empty string, use a zero (0) instead. setcookie("name2","1",0,"",".bestwebhosters.com"); or setcookie("name2","1",0,"",".bestwebhosters.com",0 ); ;-) "Curt Zirzow" <curt@zirzow.dyndns.org> a écrit dans le message de news: 20030717053924.GA50106@bagend.shire... > Ryan A <ryan@jumac.com> wrote: > > Hey, > > Am just getting into PHP cookies and have gotten a problem...(surprise > > surprise) > > > > Am trying to set a basic cookie to see exactly how things work before I > > start using it in my apps, heres the code i am using: > > (SetCookieEx.php) > > <?php > > setcookie("name1","1","","",".bestwebhosters.com") ; > > setcookie("name2","1","","",".bestwebhosters.com") ; > > > > echo "done"; > > ?> > > > > This is the output I am getting: > > ********************** > > Warning: setcookie() expects parameter 3 to be long, string given in > > /bestweb/public_html/testing/SetCookieEx.php on line 2 > > > > Warning: setcookie() expects parameter 3 to be long, string given in > > /bestweb/public_html/testing/SetCookieEx.php on line 3 > > done > te> > > <quote site=php> > bool setcookie ( string name [, string value [, int expire [, string > path [, string domain [, int secure]]]]]) > > [...] > > All the arguments except the name argument are optional. You may also > replace an argument with an empty string ("") > </quote> > > at first look this appears to be a bug. but I have a fealing its only > cause your error_reporting is set to E_ALL thus a warning is shown > because the third paramater should be a interger so change it to: > > setcookie("name2","1",0,"",".bestwebhosters.com"); > > mabey documentation should be changed. > > > > > This is how I am trying to read the cookies: (ReadCookieEx.php) > > **************************** > > <?php > > if (isset($_COOKIE ['name1'])){ > > echo $_COOKIE ['name1']; > > }else{echo "wrong1";} > > > > if (isset($_COOKIE ['name2'])){ > > echo $_COOKIE ['name2']; > > }else{echo "wrong2";} > > ?> > > > > This is the output i am getting: > > ******************* > > wrong1wrong2 > > hmm.. > > few things: > 1. is your setcookie returning true or false? > 2. have you examined (or even see the cookie get set) the actual cookie > to see > 3. good reading for intro to cookies for programmers: > http://wp.netscape.com/newsref/std/cookie_spec.html > > > > > > > > > Anybody have any ideas? > > > > Cheers, > > -Ryan > > > > Curt > -- > > |