J'ai un cookie que je l'utilise sur mon application. Il ressemble à ceci:cookie PHP écrit sur le domaine incorrect
+-------+-------+-----------------------+-------+----------+
| Name | Value | Domain | Path | Expires |
+-------+-------+-----------------------+-------+----------+
| foo | bar | my.domain.tld |/ | Session |
+-------+-------+-----------------------+-------+----------+
Dans une section de mon script, basé sur une condition, je suis en train de changer la valeur d'un cookie. J'utilise ce code:
// overwrite cookie
if($condition){
setcookie("foo", "cat", 0, "/", "my.domain.tld");
}
Par la suite, mes données de cookie ressemble à ceci:
+-------+-------+-----------------------+-------+----------+
| Name | Value | Domain | Path | Expires |
+-------+-------+-----------------------+-------+----------+
| foo | bar | my.domain.tld |/ | Session |
| foo | cat | .my.domain.tld |/ | Session |
+-------+-------+-----------------------+-------+----------+
Comment se fait un .
est préfixera le domaine? Je veux écraser le cookie existant.
n'a pas de sens, il * doit * être réglé sur anything.domain.tld sinon il y a un gros bug quelque part - la seule chose que j'ose suggérer, est que vous vérifiez à nouveau et assurez-vous que le premier cookie n'est pas en fait mis à .anything plutôt que le second .. – nathan
Nathan, il semble que ce n'est pas un bug tant que cela pourrait être une source commune de confusion. Voir la réponse ci-dessous :) –
Vous trouverez peut-être [ '$ Cookie-> setDomain (domaine $)'] (https://github.com/delight-im/PHP-Cookie/blob/004cde69ec840e65c15275e09b92ecb1da06f357/src/Cookie.php# L117) utile, tel que trouvé dans [cette bibliothèque autonome] (https://github.com/delight-im/PHP-Cookie). Il prend soin de normaliser le nom de domaine que vous avez fourni. – caw