cookie

Répondre
vengeur002
le 06/03/2007 à 15:27
vengeur002
OK

dernieres questions (enfin je penses )

je dois mettre l id du sujet et l id du dernier message et cela pour tous les sujets donc je dois faire comment?
est ce que comme ca c est bon ?

valeur1|valeur2|valeur3,valeur1|valeur2|valeur3

$sujet = 'valeur1|valeur2|valeur3';
$message = 'valeur1|valeur2|valeur3';
<?php
setcookie ($sujet, $message, time() + $temps);

?>

et enfin comment on eclate avec la fonction explode ?

merci
vengeur002
le 06/03/2007 à 15:52
vengeur002
j ai penser autre chose

l id des message etant unique et se rapportant obligatoirement a un sujet par le champ ['id_sujet']
je peux envoyer un cookie de nom "lu" contenant tous les message lus genre:

<?php
$message = 'valeur1|valeur2|valeur3';

setcookie ("lu", $message, time() + $temps);

// et le recuperer comme ca

if (isset($_COOKIE['lu'])) {

$_COOKIE['lu']= $lu ;
$taleau = explode ('|',$lu);

}
//je crois que ca va me retourner quelque chose du genre
$taleau[0]==>valeur1
$taleau[1]==>valeur2
$taleau[2]==>valeur3

?>


Mais y a t il une commande capable de scanner $tableau a la recherche d une valeur?

(ainsi pour chaque sujet je scanne $tableau a la recherche de la derniere id message ==> si je la trouve c est que le dernier message a été lu )

merci
jocker
le 06/03/2007 à 17:24
jocker
ca m'a l'air bien brouillon ton truc si tu veux un tableau sujet => dernier id tu fais un tableau comme ca


$tableau = array($sujet1 => $id_sujet1; $sujet2 => $id_sujet2)

etc

ensuite en cookie tu peut faire un serialize mais je vois pas du tout l'interet de ton truc. Généralement ca ne sert à rien de stocker en cookie l'id du dernier message. Si tu veux savoir quel message il a lu ou non, des que tu arrives sur ta page tu notes en cookie ou en session peut importe tous les sujets qui ont un post avec une date posterieur à la derniere visite de ton mec.

Apres tu considères comme lu chaque fois qu'il entre dans un sujet .

Mais pourquoi tu prends pas example sur des forums qui font déjà ça. www.punbb.org le fait très bien et il est bien commenté. J'aime bcp ce script à mon gout.

pour ta question sur comment on utilises explode() déjà je vois que tu as trouvé la réponse sinon je t'aurais dit www.php.net

@++
vengeur002
le 06/03/2007 à 19:53
vengeur002
rebonjour

je vois pas du tout l'interet de ton truc. Généralement ca ne sert à rien de stocker en cookie l'id du dernier message.



le but est de savoir a sa prochaine visite les sujet qu il a lu, si le dernier message d un sujet est different de l id enregistrer dans le cookie on affiche une icone non lu

si c est la meme, on affiche une icone lu


Si tu veux savoir quel message il a lu ou non, des que tu arrives sur ta page tu notes en cookie ou en session peut importe tous les sujets qui ont un post avec une date posterieur à la derniere visite de ton mec.

Apres tu considères comme lu chaque fois qu'il entre dans un sujet .



oui c est une bonne idée mais quand il va revenir meme si il n a pas lu un sujet, il le verra comme lu ou alors je vais devoir envoyer un cookie pour chaque sujet lu

mais comme dis la_globule


Vla le nombre de cookie que tu vas envoyer comme ça :/



voila tu sais tout
jocker
le 06/03/2007 à 20:54
jocker
oui dc ce que tu veux faire c'est bien ce que j'avais compris, un truc regarde le script punbb.org et tu vas voir comment il fait pr mettre l'icone à lire ou déjà lu.

@++
vengeur002
le 06/03/2007 à 21:18
vengeur002
j ai vu ca avec la_globule c est bon g trouve

merci qd meme

je mettrai le code dans ce topic quand il sera terminer pour info

++
vengeur002
le 06/03/2007 à 23:13
vengeur002
donc ca donnera ca

<?php
//on calcul le nombre de seconde contenu dans un an
$temps = 3600*24*365;
//on declare un tableau
$tableau= array($id_sujet=>$date,id_sujet=>$date);
//on le transaforme en chaine de caractere
$chaine= serialize($tableau);
//on insere la chaine dans le cookie
//(on ne peux pas inserer de strusture dans un cookie
setcookie ("lu", $chaine, time() + $temps);
?>


et on recupere comme ceci

<?php
//onverifie si le cookie existe
if (isset($_COOKIE['lu'])) {
//on retransforme en tableau
$tableau = unserialize($_COOKIE['lu']);
//la on peux reutiliser le tableau comme a l'envoie du cookie
}
?>


encore merci a LA GLOBULE jocker et bibi smiley
vengeur002
le 08/03/2007 à 21:28
vengeur002
merci i M@N

mais je ne peux pas utiliser ca


ce que je veux faire c est envoyer un cookie contenant un tableau donc ca c est bon maintenant je sais le faire

mais ensuite je n arrive pas a le recuperer

pour creer la chaine de caractere inserer dans le cookie j utilise serialize()

j ai essayer de recuperer avec unserialize() ais ca ne fonctionne pas :(

tu peux m aider?

merci d avance
Répondre
LoadingChargement en cours