La solution au paramétrage invalide des cookies en PHP est d'ajouter un quatrième paramètre lors de l'utilisation de la fonction setcookie pour garantir qu'il prend effet dans tous les répertoires, tels que [setcookie("id",$id, time()+36002430 ,'/ ');].
L'environnement d'exploitation de cet article : système windows10, php 7.3, ordinateur thinkpad t480.
Nous utilisons généralement la fonction setcookie pour définir des cookies sur une page, comme
setcookie("id",$id, time()+36002430);
Mais après être revenu à la page d'accueil, vous constaterez peut-être qu'elle ne prend pas effet. Il n'y a aucune donnée dans $_COOKIE en PHP.
Après cela, je suis allé sur le site officiel pour vérifier les instructions de setcookie, et j'ai finalement découvert que le quatrième paramètre de setcookie est le chemin. C'est-à-dire que si le quatrième paramètre est vide, il ne prendra effet par défaut que dans le répertoire courant. Généralement, il n'y a pas de problème.
Mais mon site est configuré avec rewrite et index.php est masqué, donc le cookie défini n'est valide que sur cette page.
La solution est d'ajouter le 4ème paramètre, tel que
setcookie("id",$id, time()+36002430 ,'/');
Partage de vidéos d'apprentissage associées : Tutoriel vidéo php
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!