Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2574 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  [PHP] Forums : topics visités ou non : changement d'icone !?!?

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[PHP] Forums : topics visités ou non : changement d'icone !?!?

n°202447
Snake Ulti​mate
Webmaster France Hardware
Posté le 26-08-2002 à 22:45:01  profilanswer
 

La question a déjà était posée je crois mais je ne retrouve pas le topic :(
 
Voilà j'aimerais bien avoir la solution miracle pour afficher un icone differente suivant si un topic a été lu ou pas par l'utilisateur. Joce a l'air d'avoir trouvé un bon système mais j'ai essayé quelques trucs et rien de bien concluant.. alors si kk1 a une idée miracle (Joce ? :D) ou si kk1 a le lien du topic qui en parlait je veux bien...
 
Merci beaucoup !!! :)


---------------
Les prix du matos sur Internet et près de chez vous : www.france-hardware.com
mood
Publicité
Posté le 26-08-2002 à 22:45:01  profilanswer
 

n°202456
gm_superst​ar
Appelez-moi Super
Posté le 26-08-2002 à 23:27:16  profilanswer
 

Ben pour les topics lus, j'imagine qu'il y a une table dédiée à ça où est noté le nom de l'utilisateur, l'ID du topic et l'ID du dernier message dans ce topic. Idem pour les topics où on a participé.

n°202525
Core 666
Posté le 27-08-2002 à 08:15:11  profilanswer
 

gm_superstar a écrit a écrit :

Ben pour les topics lus, j'imagine qu'il y a une table dédiée à ça où est noté le nom de l'utilisateur, l'ID du topic et l'ID du dernier message dans ce topic. Idem pour les topics où on a participé.



Oui, tout du moins c'est le système que j'utilise sur mon forum. J'ai une table dédiée aux enregistrements de position, avec 4 champs : id du membre, id du topic, id du dernier message présent lors de sa consultation, n° de la derniere page présente lors de sa consultation. Il suffit de faire une jointure sur cette table lors de l'affichage de la liste des sujets et de comparer l'id du dernier sujet actuel avec l'id du dernier sujet enregistré dans la table précédement décrite. Simple, efficace. Rapide quand c'est concu avec intelligence.

n°202532
FredProg
Posté le 27-08-2002 à 08:39:02  profilanswer
 

il y a des mods pour phpbb pour faire ça par contre comme tu n'utilises pas la dernière version je ne peux pas te le donner faut chercher un peu ça doit exister aussi pour cette version :)
 
http://forum.2037.biz/viewforum.php?f=10
http://www.phpbbhacks.com/categories.php?version=1

n°202689
jolly
Posté le 27-08-2002 à 11:31:02  profilanswer
 

sur le site de hfr ca passe aps comme ca :
vu le nombre de personnes qui circulent si tu cree a chaque "vue" d'un topic une entree dans une bdd t pas sorti !!
 
d'après ce que j'ai vu il font ca en utilisant l'hitorique de ton navigateur :
 
comme les liens changent de couleur qd t'as déja vu la destination on dirais qu'il font la meme chose pour les icone mais apre comment ...ca ...

n°202780
Profil sup​primé
Posté le 27-08-2002 à 12:35:45  answer
 

jolly => cai stocké dans la bdd, kan tu changes de navigateur ou de paicai ca marche toujours...
seulement il stock un nombre limités de topic je crois (du moins pour ceux deja lus ou auxquels tu as participé)

n°202787
black_lord
Truth speaks from peacefulness
Posté le 27-08-2002 à 12:54:18  profilanswer
 

si tu veux le stocker avec des cookies un script (à adapter of course) est dispo là : www.piregwan.com/scripts

n°202808
jolly
Posté le 27-08-2002 à 13:50:15  profilanswer
 

Yack a écrit a écrit :

jolly => cai stocké dans la bdd, kan tu changes de navigateur ou de paicai ca marche toujours...
seulement il stock un nombre limités de topic je crois (du moins pour ceux deja lus ou auxquels tu as participé)




 
 
si tu y a participé c pas la peine de stocker car t'as ton id dans la liste des posteurs de ce topic !!
 
par contre je croit que j'ai dis une connerie !!
mais il stocke comment tous les messages "vu" (simplement vu)
dans des cookies ?? c pas possible ...
ou alors t'as plus d'un chiffre dans tes cookies !

n°202821
gm_superst​ar
Appelez-moi Super
Posté le 27-08-2002 à 14:08:15  profilanswer
 

jolly a écrit a écrit :

si tu y a participé c pas la peine de stocker car t'as ton id dans la liste des posteurs de ce topic !!



Certes mais quand on affiche la liste des topics, je pense que ce serait une mauvaise idée d'interroger cette table (sans doute énorme et avec des infos dupliquée si on a posté plusieurs fois dans un même topic). Alors que si tu crées un table spécialement dédiée à cette fonction (à la manière de la table pour les topic consultés) tu récupère uniquement l'information intéressante.

jolly a écrit a écrit :

par contre je croit que j'ai dis une connerie !!
mais il stocke comment tous les messages "vu" (simplement vu)
dans des cookies ?? c pas possible ...
ou alors t'as plus d'un chiffre dans tes cookies !



Ben non dans une table. Pourquoi ça te choque qu'on ajoute une entrée dans une table à chaque fois qu'on consulte un topic ?


Message édité par gm_superstar le 27-08-2002 à 14:08:27
n°202822
Snake Ulti​mate
Webmaster France Hardware
Posté le 27-08-2002 à 14:08:35  profilanswer
 

bon finalement j'ai fait une table ds la bdd je v oir ce que ça donne.
 
un truc où pour chaque topic consulté on ajoute une ligne avec le topic_id, user_id et time()
 
en cas de nvelle reponse ds un topic on fait un ptit delete sur cette table pour l'aléger... fo voir en pratique maintenant :D


---------------
Les prix du matos sur Internet et près de chez vous : www.france-hardware.com
mood
Publicité
Posté le 27-08-2002 à 14:08:35  profilanswer
 

n°202837
jolly
Posté le 27-08-2002 à 14:25:59  profilanswer
 

recapepetons :
 
j'suis intrigué par la gestion des messages sur le forum de Hfr :
et c'est ces icones
http://forum.hardware.fr/images/closedb.gifhttp://forum.hardware.fr/images/closed.gif
ce deux la indiquent si tu as été le dernier posteur de ce topic ou non
un simple test sur une requete SQL permet de le verifier je pense
 
 
http://forum.hardware.fr/icones/flag0.gifhttp://forum.hardware.fr/icones/flag1.gif
mais ces deux dernier indiquent si tu as lu le dernier message posté dans ce topic ( auquel tu es forcément déja allé )
 
ce qui m'intrigue c'est ces derniers :  
les infos concernant ces "flags" sont sur nos machines ou du moins partiellement car quand j'efface mes fichiers temporaires ils disparraissent !!
mais la ca me parais plus dur a gerer


Message édité par jolly le 27-08-2002 à 14:28:19
n°202850
gm_superst​ar
Appelez-moi Super
Posté le 27-08-2002 à 14:36:21  profilanswer
 

jolly a écrit a écrit :

recapepetons :
 
j'suis intrigué par la gestion des messages sur le forum de Hfr :
et c'est ces icones
http://forum.hardware.fr/images/closedb.gifhttp://forum.hardware.fr/images/closed.gif
ce deux la indiquent si tu as été le dernier posteur de ce topic ou non



Non ils indiquent s'il y a de nouveaux messages depuis ta dernière consultation/participation.
jaune => pas de nouveau message
rouge => nouveaux messages => drapeau bleu ou rouge
rouge => couleur par défaut si le topic n'a jamais été lu
(au fait tout ça est expliqué en bas de chaque page de liste des topics)

jolly a écrit a écrit :

http://forum.hardware.fr/icones/flag0.gifhttp://forum.hardware.fr/icones/flag1.gif
mais ces deux dernier indiquent si tu as lu le dernier message posté dans ce topic ( auquel tu es forcément déja allé )
 
ce qui m'intrigue c'est ces derniers :  
les infos concernant ces "flags" sont sur nos machines ou du moins partiellement car quand j'efface mes fichiers temporaires ils disparraissent !!
mais la ca me parais plus dur a gerer



Ben faut voir ce que tu effaces... Si tu effaces tes cookies il est clair que tu ne vas retrouver grand choses.
 
En fait avec HFR, tout est géré du coté du serveur. Si je vais sur une nouvelle machine que je n'ai jamais utilisé auparavant, il suffit de m'authentifier pour retrouver l'état que j'avais laissé avant (y compris les drapeaux bleu et rouge)

n°202887
jolly
Posté le 27-08-2002 à 15:01:10  profilanswer
 

bon ok je m'incline ....
g t persuadé d'autre chose mais je viens de faire le test chez moi et il semble que tu sois plus dans le vrai que moi  :D  :jap:

n°202889
jolly
Posté le 27-08-2002 à 15:03:44  profilanswer
 

bon alors je relance autrement le topic :
 
les liens modifient leurs couleurs quand il ont été vu !!
y a t il moyen de controler ce changement de couleur ??
peut on recuperer le statut nouveau/deja-vu tel que le font les liens HTML ??

n°202906
gm_superst​ar
Appelez-moi Super
Posté le 27-08-2002 à 15:13:33  profilanswer
 

Tu n'es pas le seul à t'être posé cette question : http://forum.hardware.fr/forum2.php3?post=24027&cat=10

n°202924
Profil sup​primé
Posté le 27-08-2002 à 15:32:07  answer
 

jolly a écrit a écrit :

 
 
 
si tu y a participé c pas la peine de stocker car t'as ton id dans la liste des posteurs de ce topic !!
 
par contre je croit que j'ai dis une connerie !!
mais il stocke comment tous les messages "vu" (simplement vu)
dans des cookies ?? c pas possible ...
ou alors t'as plus d'un chiffre dans tes cookies !
 




 
bah les 40 (a verifier...) derniers topics auxquels tu as participé ou seulement acceder sont stockés dans une table, certainement ke les infos stockees sont l'id du membre, le topic accede, le dernier msg kan tu y as accede, et si oui ou non tu y as participé
 
ca permet donc de gerer les icones ki indik si tu as accede ou non au message ainsi que les drapeaux

n°202928
black_lord
Truth speaks from peacefulness
Posté le 27-08-2002 à 15:38:32  profilanswer
 

jolly a écrit a écrit :

 
...
dans des cookies ?? c pas possible ...
ou alors t'as plus d'un chiffre dans tes cookies !




tu peux très bien mettre des infos "encodées dans tes cookies" style :

sujet1:25:sujet2:12 etc...

n°202935
jolly
Posté le 27-08-2002 à 15:41:38  profilanswer
 

black_lord a écrit a écrit :

 
tu peux très bien mettre des infos "encodées dans tes cookies" style :

sujet1:25:sujet2:12 etc...






 
un peu barbare qd mm !

n°202958
black_lord
Truth speaks from peacefulness
Posté le 27-08-2002 à 15:59:49  profilanswer
 

jolly a écrit a écrit :

 
 
un peu barbare qd mm !




 


forum_reminder
id1796A31Zid1797A4Zid1795A12Zid1728A9Zid372A26Zid675A6Zid1794A13Z
id1791A21Zid1793A7Zid1792A2Zid1790A12Zid1789A4Zid1788A3Zid1787A8Z
id1798A3Zid1779A15Zid1786A10Zid1785A8Zid1782A0Zid1783A5Zid1781A16
Zid1780A21Zid1799A12Zid1721A26Zid1784A24Zid1800A24Zid1801A3Zid180
3A17Zid1802A8Zid1804A6Zid1811A22Zid1807A32Zid1808A4Zid1810A10Zid1
809A11Zid789A3Zid1812A8Zid581A1Zid343A6Zid590A40Zid1813A27Zid1805
.....


 
Ca c'est barbare.. mais ça a le mérite de fonctionner
 
Edit - J'ai tronqué parce que ça démonte le forum sinon


Message édité par black_lord le 27-08-2002 à 16:00:49
n°203180
Dost67
Posté le 27-08-2002 à 18:01:14  profilanswer
 

Ca doit certainement être plus rapide d'utiliser des cookies pour faire ça...
Et de tte façon je sais pas pour vous, mais je ne regarde que très peu souvent ces drapeaux... Donc je dirais qu'il s'agit d'une fct secondaire.

n°203192
Core 666
Posté le 27-08-2002 à 18:06:08  profilanswer
 

Dost67 a écrit a écrit :

Ca doit certainement être plus rapide d'utiliser des cookies pour faire ça...
Et de tte façon je sais pas pour vous, mais je ne regarde que très peu souvent ces drapeaux... Donc je dirais qu'il s'agit d'une fct secondaire.



Si c'est bien codé un tel système n'est pas lent. Et puis c'est bien plus fiable. Beaucoup de gens surfent et à leur domicile, et à leur lieu de travail. Le fait que ce soit stocké en base apporte un gros plus.
 
Quant à l'utilité de cette fonction ... personnellement je ne peux plus m'en passer, et je crois que les visiteurs de mon forum gueuleraient bien si je la retirais :D

n°203309
Core 666
Posté le 27-08-2002 à 19:01:45  profilanswer
 

Core 666 a écrit a écrit :

 
Si c'est bien codé un tel système n'est pas lent.



D'ailleurs, pour illustrer mon affirmation vous pouvez jetter un oeil à mon forum (http://www.forum-auto.com/sqlforum/index.htm). Quand je me suis lancé dans le développement de ce système, je pensais que ca boufferait un peu de ressource au fur et à mesure que ma base grandirait. J'ai donc fait 2 requêtes différentes, une avec la jointure (utilisée quand le visiteur est identifié), l'autre sans (la colonne qui contient les drapeaux n'apparait même pas dans ce cas là).
 
Et au final, les temps de génération des pages sont très très proches (malgré les 854 535 messages et les 138 447  enregistrements dans la table qui mémorise les positions). Il y a grosso-modo 3 centièmes de seconde de différence, et encore, vu qu'il y a toujours du monde de connecté je peux pas vraiment dire, même sur plusieurs essais.


Message édité par Core 666 le 27-08-2002 à 19:02:20
n°203365
ethernal
Chercheur de vérité...
Posté le 27-08-2002 à 20:03:37  profilanswer
 

j'ai pas lu ou vous en êtes mais sinon j'avais donné  une soluce avec cookie (qui fct très bien) dans ce topic
bonne lecture  :hello:  
 
http://forum.hardware.fr/forum2.ph [...] ubcat=#bas
10ième message en partant du bas
 


---------------
...oups kernel error...
n°203409
Freekill
Electron libre…
Posté le 27-08-2002 à 21:23:45  profilanswer
 

black_lord a écrit a écrit :

 
 


forum_reminder
id1796A31Zid1797A4Zid1795A12Zid1728A9Zid372A26Zid675A6Zid1794A13Z
id1791A21Zid1793A7Zid1792A2Zid1790A12Zid1789A4Zid1788A3Zid1787A8Z
id1798A3Zid1779A15Zid1786A10Zid1785A8Zid1782A0Zid1783A5Zid1781A16
Zid1780A21Zid1799A12Zid1721A26Zid1784A24Zid1800A24Zid1801A3Zid180
3A17Zid1802A8Zid1804A6Zid1811A22Zid1807A32Zid1808A4Zid1810A10Zid1
809A11Zid789A3Zid1812A8Zid581A1Zid343A6Zid590A40Zid1813A27Zid1805
.....


 
Ca c'est barbare.. mais ça a le mérite de fonctionner
 
Edit - J'ai tronqué parce que ça démonte le forum sinon




 
C'est stocké dans un champs varchar et tu l'explode() lors de la récupération, c'est ça ?
 
Si oui, comment fais-tu pour qu'il n'y ait pas de numéro de topic "coupé" à la fin ?
 
Je m'explique :  
 
Je suppose que lorsqu'un user visionne un sujet, tu récupères ce string, tu ajoutes l'id, la page et le dernier message du topic visionné au début de la chaîne, puis que tu la réinsères dans la base avec un UPDATE.
 
Au fil du temps, la chaîne va atteindre la limite des 255 caractères et la fin sera coupée, ce qui est bien en soi, mais comment faire pour qu'elle soit coupée après le dernier enregistrement complet ? Une regexp de la mort je suppose ?  :heink:  
 
Ou alors je me plante complètement ?  :D


---------------
Faux & usage de faux ¤ Machins roses ¤ ASCIImage ¤ HFR Enhance v0.8.6
n°203568
black_lord
Truth speaks from peacefulness
Posté le 28-08-2002 à 08:57:30  profilanswer
 

Ceci n'est pas mon système mais celui utilisé sur piregwan.com
 
C'est le contenu d'un cookie donc la limite de taille n'est pas si importante (4Ko)
 
www.piregwan.com/forum2 si tu veux voir ce que ça donne...

n°204120
Freekill
Electron libre…
Posté le 28-08-2002 à 17:31:41  profilanswer
 

Hmmm, je suis pas trop chaud pour le cookie.
 
Personne n'a fait un truc dans le genre de celui que j'ai décrit plus haut ?


---------------
Faux & usage de faux ¤ Machins roses ¤ ASCIImage ¤ HFR Enhance v0.8.6
n°204334
ethernal
Chercheur de vérité...
Posté le 29-08-2002 à 01:18:30  profilanswer
 

table topic_read:
user_id
forum_id
topic_id
last_access -> date
answered  -> 0/1
 
sinon à la place de last_access tu peux mettre l'id du dernier message présent dans le sujet lorsque l'utilisateur l'a visionné pour l'accès au dernier message lu.
 
pour la mise en pratique rien ne change de l'algo que j'ai donné plus haut (voir lien)


---------------
...oups kernel error...
mood
Publicité
Posté le   profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  [PHP] Forums : topics visités ou non : changement d'icone !?!?

 

Sujets relatifs
Envoyé des mail en PHP ? J'ai du faire une boullette[PHP] besoin d'aide pour faire tout en un seul fichier... [RESOLU]
Sockets, PHP, newsletter... comment ça marche ?[ PHP ] Problème pour trouver la librairie GD ?
[PHP] afficher du html avec printf...Erreur SQL PHP, affreux !! C koi ???
[PHP & JavaScript] Identification avec un cookie[PHP] Renvoyer des informations d'une page à l'autre par l'URL
[Easy Php] Pourquoi ca marche pas ? (Avec XP)[PHP] lancement de script tout les jours ...
Plus de sujets relatifs à : [PHP] Forums : topics visités ou non : changement d'icone !?!?


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR