Fonction cookie

Résolu
mob220 Messages postés 11 Date d'inscription   Statut Membre Dernière intervention   -  
mob220 Messages postés 11 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
j'ai crée cette fonction pour détecter c un visiteur accepte les cookies

<?php
function cookieActive()
{
	setcookie('test_cookie','test_cookie',time()+10000);
	if(isset($_COOKIE['test_cookie']))
		return true;
	else
		return false;
}
?>


mais lorsque je test avec les cookies activés dans mon navigateur, le 1er test la fonction m'indique que les coockies ne sont pas active, après ça marche.

Voici le code pour le test :
<?php
if(!cookieActive())
{
	echo  'les cookies sont désactivés';
}
?>

pouvez-vous me dire pourquoi ca ne marche pas la premiere fois ?
A voir également:

2 réponses

toto
 
Bonjour

Ca ne marche pas parce que isset($_COOKIE['test_cookie'])) teste si un cookie était défini chez le client lors de l'appel de ta page, alors que setcookie va créer ce cookie quand le client recevra cette information.
Quand ta page a été appelée la 1ère fois, ton script n'avait pas encore été exécuté, donc le cookie n'était pas défini chez le client. Que tu places le test isset avant ou après le setcookie n'y change rien.
Conclusion : ce n'est pas la bonne méthode pour savoir dès la 1ère page si un client accepte les cookies. Quelqu'un d'autre saura peut-être te comment il faut faire.
1
mob220 Messages postés 11 Date d'inscription   Statut Membre Dernière intervention   1
 
merci pour ta réponse toto, maintenant j'ai compris.
0