Précédent   Forum des professionnels en informatique > PHP > Langage > Sessions
Sessions Forum d'entraide sur les sessions avec PHP. Avant de poster -> FAQ sessions, Cours sessions et Sources sécurité
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 16/03/2007, 14h40   #1
Membre à l'essai
 
Inscription : mars 2007
Messages : 107
Détails du profil
Informations forums :
Inscription : mars 2007
Messages : 107
Points : 23
Points : 23
Par défaut [Cookies] Mes cookies ont un comportement curieux

Hello,

Je reviens a la charge avec mes problemes des cookie.

J'ai écrit un forum/board et je souhaite indiquer a l'utilisateur lorsque il a lu tel ou telm message. Simplement je coloerie les message non lu en vert.

Mes cookies se nomment tous selon le format suivant:
Le cookie nomé id_post1 correspont au post/topic numeros 1
Le cookie nomé id_post2 correspont au post/topic numeros 2
Le cookie vaut 1 lorsque l'utilisateur a lu le message correspondant et 0 si le message n'a jamais été lu.

Pour savoir si un cookiie até lu j'ai la fonction suivante:

Code PHP :
1
2
3
4
5
6
7
8
 
 
function IsRead($id_post) {
 
	error_reporting( E_ERROR | E_WARNING | E_PARSE);
 
	return $_COOKIE["id_post".$id_post];
}

Le error_reporting est utile parce que il evite un message de warning lorsque le cookie n'existe pas.

Ma fonction IsRead fonctionne parfaitement mais je ne suis absolument pas content. J'avais commencé par écrire une autre fonction qui n'utilise pas la fonction error_reporting et qui liste les cookies un a un. Mais malheureuseemnt elle ne fonctionne pas et mes cookies ne sont pas lu.

Voila la fonction:

Code PHP :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
 
 
// La boucle while parcourt la liste/tableau des cookie
// Lorsque le cookie cherché (celui qui correspond au cookie $id_post)
// est trouvé on sort de la boucle et on retourne la valeur dudit cookie.
// L'interet est de ne pas utiliser la fonction error_reporting de l'autre
// fonction IsRead.
// IsRead retourn 0 si le cookie n'est pas trouvé
 
function IsReadOLD($id_post) {
 
	while (list($mykey, $myval) = each($_COOKIE)) {
 
		$MyCookie="id_post".$id_post;
		if ($mykey=$MyCookie) {
			return $myval;
		}
	}
	return (0);
 
}

Ma question est: qu'est-ce qui ne vas pas dans ma fonction IsReadOLD pour qu'elle ne fonctionne pas ?

Merci de toute aide.
Jinx_ est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/03/2007, 15h36   #2
Membre chevronné
 
Avatar de haltabush
 
Développeur Web
Inscription : avril 2005
Messages : 726
Détails du profil
Informations personnelles :
Âge : 27
Localisation : France

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : avril 2005
Messages : 726
Points : 790
Points : 790
Ca, peut-être :
Il faut mettre ==
haltabush est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/03/2007, 16h11   #3
Membre à l'essai
 
Inscription : mars 2007
Messages : 107
Détails du profil
Informations forums :
Inscription : mars 2007
Messages : 107
Points : 23
Points : 23
Oui, merci. C'est une grossiere erreur.

mais ce n'est pas ca je pense... je teste dés que je peux et je vous tients informé.
Jinx_ est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 21h18.


 
 
 
 
Partenaires

Hébergement Web