If I call setcookie()
two times with the same cookie name, I get two cookies created.
How do you update an existing cookie?
If I call setcookie()
two times with the same cookie name, I get two cookies created.
How do you update an existing cookie?
So while PHP will send two Set-Cookie: headers if instructed so, only the last one should persist in browsers.
The Netscape cookie spec http://curl.haxx.se/rfc/cookie_spec.html says:
However, it might be advisable to avoid such edge conditions. Restructure your application so it doesn't need to override the already sent cookie.
call COOKIE and delete username value SETCOOKIE("username",'',0,"/");
You can update a cookie value using setcookie() function, but you should add '/' in the 4th argument which is the 'path' argument, to prevent creating another cookie with the same name.
i.e.
setcookie('cookie_name', 'cookie_value', $exp_date, '/');
You can't update a cookie per se, you can however overwrite it. Otherwise, this is what you are looking for: http://php.net/manual/en/function.setcookie.php
It works. Be sure to read "Common Pitfalls" from that page.
You can use the super global
$_COOKIE['cookie_name']
as well to read/write cookies.