Maison >développement back-end >Problème PHP >Que dois-je faire si php ne peut pas définir de cookies ?
Solution au problème selon lequel PHP ne peut pas définir de cookies : 1. Exécutez "ob_start();" au début du programme PHP ; 2. Modifiez l'heure du serveur ou augmentez la durée de vie des cookies ; 3. Définissez la portée correcte ; Utiliser les paramètres L'url transmet la valeur du cookie, etc.
L'environnement d'exploitation de cet article : système Windows 7, PHP version 7.1, ordinateur DELL G3
php Que dois-je faire si le cookie ne peut pas être défini
Le programme PHP ne peut pas définir le cookie ?
1. Le programme PHP exécute setcookie. Il y a eu une sortie auparavant.
Solution :
Vérifiez le programme avant setcookie pour voir s'il y a un retour chariot ou un espace avant le code PHP
Ou :
Exécutez ob_start() au tout début du programme ;
2. La durée de vie du cookie PHP est trop courte et meurt avant qu'elle ne prenne effet
Vous pouvez vérifier ce problème en exécutant time() dans le programme PHP. ; Vérifiez si la différence entre l'heure du serveur et l'heure locale dépasse le temps de survie
Solution : Modifier l'heure du serveur ou augmenter la durée de vie des cookies.
3. La portée du cookie PHP est incorrecte
Tout d'abord, définissez la portée du cookie sur / pour voir s'il y a un problème. Si le problème est résolu, définissez-le sur la bonne portée
4. Il est interdit aux utilisateurs d'utiliser des cookies
Ce n'est pas la faute du programme. Cependant, ce problème peut être résolu en utilisant une URL paramétrée pour transmettre la valeur ou la session du cookie.
5. Autres questions
6 Merci à fjytzh au troisième étage pour le supplément. Cette situation se produit surtout dans les programmes plus anciens. Cet effet est équivalent à register_global=on.
De nombreux programmes (par exemple : forums) extraient les valeursde $_COOKIE, $_GET, $_POST puis annulent les valeurstelles que $_COOKIE, $ _GET, $_POST
Ce genre de chose est relativement simple et je n'ai aucun moyen de l'empêcher. Faites juste attention lors du développement.
Bien sûr, si vous utilisez $_COOKIE['XXXX'] plus tard, vous ne pourrez pas y accéder
7 La question la plus idiote
La valeur du cookie est vide, je n'ai pas besoin de vous dire comment. pour faire ça
Dans le code PHP Il y avait un retour chariot en php...
Je n'ai jamais remarqué ça auparavant...
Il y a aussi une question plutôt idiote
Beaucoup de programmes (par exemple : forums) ont $_COOKIE, $_GET, $_POST Extrayez la valeur
puis supprimez la valeur de $_COOKIE, $_GET, $_POST et ainsi de suite
Bien sûr, vous ne pourrez pas y accéder plus tard si vous utilisez $_COOKIE['XXXX']
Ceci convient pour modifier d'autres systèmes complets.
Apprentissage recommandé : "
Tutoriel vidéo PHPCe 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!