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

  FORUM HardWare.fr
  Programmation
  PHP

  forum en PHP : problème de suivi des messages [résolu]

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

forum en PHP : problème de suivi des messages [résolu]

n°332102
BenJ9002
Posté le 13-03-2003 à 13:58:01  profilanswer
 

Salut à tous,
 
Je suis en train de modifier complètement mon forum et je me pose pas mal de questions.
Déja, c'est un forum sans inscription (pour le moment tout du moins) et le premier truc qui m'embète, c'est pour le suivi des messages. J'ai juste un pb avec le stockage de la valeur de la dernière réponse vue. J'ai essayé avec un cookie, mais je peux stoquer que 20 paramètres, donc, c moyen pour le forum :-/ Je me suis dis que j'allais stoquer dans un tableau pour chaque numero de question le nb de réponses vues, mais ca marche pas [:zoutte]  
Comment vous avez fait vous pour le suivi des messages ?  
 
J'aurais surement d'autres questions au fur et a mesure de l'avancement de mon forum, mais la je suis déja bien coincé
Merci d'avance pour l'aide que vous pourrez m'apporter :jap:


Message édité par BenJ9002 le 16-03-2003 à 14:22:15
mood
Publicité
Posté le 13-03-2003 à 13:58:01  profilanswer
 

n°332129
Mara's dad
Yes I can !
Posté le 13-03-2003 à 14:22:26  profilanswer
 

Ben sans inscription, ce n'est envisageable que le temps de la session non ?
 
Avec inscriptions, il suffit d'une table de liaison entre les messages et les utilisateurs.


---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.
n°332138
BenJ9002
Posté le 13-03-2003 à 14:26:11  profilanswer
 

:ouch: c'est a dire ?  
 
On peut pas stoquer un tableau dans un cookie ? pasque ca m'aurais bien arrangé...  

n°332164
BenJ9002
Posté le 13-03-2003 à 14:51:53  profilanswer
 

Y aurais pas qqn qui aurait fait un forum sans inscription qui pourrais m'aider [:zoutte] siouplait ? :(

n°332179
AGA
La boîte à Bokeh!
Posté le 13-03-2003 à 15:15:22  profilanswer
 

heu avec ou sans inscription , il y atjs des tables, donc jvois pas le blem?
 
tu stock le nbre de reponses et de vue dans la table  :)

n°332180
BenJ9002
Posté le 13-03-2003 à 15:18:54  profilanswer
 

AGA a écrit :

heu avec ou sans inscription , il y atjs des tables, donc jvois pas le blem?
 
tu stock le nbre de reponses et de vue dans la table  :)  


Oui, ca ca marche nikel. Mon problème viens du sivi de la discussion. Quand un utilisateur clique sur mon lien, je veux qu'il soit dirigé directement à la dernière réponse qu'il a vu. Mais comment je fait pour garder cette valeur ?

n°332182
Mara's dad
Yes I can !
Posté le 13-03-2003 à 15:23:18  profilanswer
 

Si ton visiteur ferme son navigateur, comment tu fait pour le reconnaire la prochaine fois si il n'y a pas d'inscription ?


---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.
n°332188
BenJ9002
Posté le 13-03-2003 à 15:35:20  profilanswer
 

avec un cookie dans lequel je stocque son nom, sa couleur de fond et ou je stoquais pour chaque question le nb de réponses qu'il avait vu. Mais le pb, c'est que comme il peut y avoir que 20 variables dans le cookie, ben à la 20e question lue, ben pouf, on perd le nom :/
Donc, je cherche un autre moyen de faire ...
D'ou ma tentative de stoquer un tableau qui contiendrait pour chaque index de question, le nombre de réponses lues. Mais ca non plus ca marche pas [:zoutte]


Message édité par BenJ9002 le 13-03-2003 à 15:36:33
n°332210
BenJ9002
Posté le 13-03-2003 à 15:56:07  profilanswer
 

Et si je fait avec une inscription (faudra que j'y passe bientot de toutes facons) comment ca marche pour le suivi alors ? Vous avez fait comment vous ?

n°332256
BenJ9002
Posté le 13-03-2003 à 16:55:24  profilanswer
 

benj9002 a écrit :

Et si je fait avec une inscription (faudra que j'y passe bientot de toutes facons) comment ca marche pour le suivi alors ? Vous avez fait comment vous ?


 :bounce:

mood
Publicité
Posté le 13-03-2003 à 16:55:24  profilanswer
 

n°332322
Core 666
Posté le 13-03-2003 à 17:40:14  profilanswer
 

Tu peux stocker un id de session permanent dans son cookie et stocker ce même numéro dans une table dédiée au suivi de la discussion. Chaque fois qu'il consulte un sujet tu enregistres son n° de session + id du sujet + id du dernier message. Mais bon, avant de te faire chier à faire un truc de ce type (qui restera de toute manière bancal) mets d'abord en place un système d'enregistrement, c'est quand même autrement plus urgent :)

n°332359
BenJ9002
Posté le 13-03-2003 à 18:11:03  profilanswer
 

Core 666 a écrit :

Tu peux stocker un id de session permanent dans son cookie et stocker ce même numéro dans une table dédiée au suivi de la discussion. Chaque fois qu'il consulte un sujet tu enregistres son n° de session + id du sujet + id du dernier message. Mais bon, avant de te faire chier à faire un truc de ce type (qui restera de toute manière bancal) mets d'abord en place un système d'enregistrement, c'est quand même autrement plus urgent :)


 
Je suis en train justement de faire le système d'enregistrement. Mais avec ton système, le suivi n'est pas conservé alors d'une session à une autre :??:

n°332368
Suri
Darksurious
Posté le 13-03-2003 à 18:29:21  profilanswer
 
n°332371
BenJ9002
Posté le 13-03-2003 à 18:32:15  profilanswer
 


 
Ah toi aussi tu veux te faire un forum :)

n°332372
Suri
Darksurious
Posté le 13-03-2003 à 18:33:51  profilanswer
 

benj9002 a écrit :


 
Ah toi aussi tu veux te faire un forum :)


je veux juste le finir plutot  :whistle:  
c la partie qui me reste la gestion des vues/participés a la maniere des drapos :d


---------------
Suri.morkitu.org : Balades au coeur de la ville...
n°332429
BenJ9002
Posté le 13-03-2003 à 19:51:16  profilanswer
 

[:ssfblanka]

n°332550
BenJ9002
Posté le 13-03-2003 à 20:59:24  profilanswer
 

[:valentinorossi]

n°332553
Core 666
Posté le 13-03-2003 à 21:02:52  profilanswer
 

benj9002 a écrit :


Je suis en train justement de faire le système d'enregistrement. Mais avec ton système, le suivi n'est pas conservé alors d'une session à une autre :??:


Si, comme je le disais dans mon premier message il te faut stocker un id de session permanent dans le cookie de tes visiteurs.

n°332574
BenJ9002
Posté le 13-03-2003 à 21:16:21  profilanswer
 

Core 666 a écrit :


Si, comme je le disais dans mon premier message il te faut stocker un id de session permanent dans le cookie de tes visiteurs.


 
Ca craint pas un peu de donner un sid permanent à l'utilisateur ?
 
Mais sinon pour dans la base, si je mets un champs 'suivi' qui contient pour chaque ligne '$num_question'-'$nb_reponses_vues' et qu'a chaque fois que je charge la page liste des sujets, je fait un appel à la base, c'est lourd quand meme :/
De meme, je dois à chaque lecture d'un sujet, faire un update de ma base avec le nouveau nombre de réponses lue pour la question  
:ouch:  
 
Y a pas mieux comme système ?

n°332577
Core 666
Posté le 13-03-2003 à 21:21:24  profilanswer
 

benj9002 a écrit :


 
Ca craint pas un peu de donner un sid permanent à l'utilisateur ?


Je dis ca uniquement dans le cadre d'un forum dépourvu d'un système d'authentification. C'est clair qu'à partir du moment où tu gères des inscrits, et non plus de visiteurs, il faut procéder autrement.
 

Citation :

Mais sinon pour dans la base, si je mets un champs 'suivi' qui contient pour chaque ligne '$num_question'-'$nb_reponses_vues' et qu'a chaque fois que je charge la page liste des sujets, je fait un appel à la base, c'est lourd quand meme :/
De meme, je dois à chaque lecture d'un sujet, faire un update de ma base avec le nouveau nombre de réponses lue pour la question  
:ouch:  
 
Y a pas mieux comme système ?


Pourquoi le nombre de réponses lues ? Faut stocker l'id du dernier message au moment de la dernière consultation, c'est beaucoup mieux. Pour l'update, c'est instantanné, no soucis. Pour la liste des sujets, après ca dépend comment tu concois ton système. J'utilise une table de 480 000 enregistrements qui sert à stocker la position de chaque vue, la jointure est très rapide, j'arrive même pas à 2% de différence entre la sélection de x sujets et la sélection de x sujets + x vues :)


Message édité par Core 666 le 13-03-2003 à 21:21:47
n°332607
BenJ9002
Posté le 13-03-2003 à 21:41:30  profilanswer
 

Core 666 a écrit :


Je dis ca uniquement dans le cadre d'un forum dépourvu d'un système d'authentification. C'est clair qu'à partir du moment où tu gères des inscrits, et non plus de visiteurs, il faut procéder autrement.
 
Pourquoi le nombre de réponses lues ?


Pasque c la méthose que j'ai essayée pour quand je me suis servi de mon cookie (mais ca marchait pas)
 

Core 666 a écrit :


Faut stocker l'id du dernier message au moment de la dernière consultation, c'est beaucoup mieux.


Je suppose, c'est comme ca que je vais faire alors
 

Core 666 a écrit :


Pour l'update, c'est instantanné, no soucis.  


ca fait quand meme une requete de plus :/
 

Core 666 a écrit :


Pour la liste des sujets, après ca dépend comment tu concois ton système. J'utilise une table de 480 000 enregistrements qui sert à stocker la position de chaque vue, la jointure est très rapide, j'arrive même pas à 2% de différence entre la sélection de x sujets et la sélection de x sujets + x vues :)


ma table pour la liste des sujets, je veux pas y toucher, à la limite, je peux ajouter des champs, mais c'est tout. Mais pour ton stockage des vues t'as donc une table dédiée ? Elle est comment alors cette table ? Et tu stoques quoi dedans ?

n°332674
tetram78fr
Posté le 13-03-2003 à 22:52:15  profilanswer
 

UN conseil :
 
va sur www.xmbforum, télécharge le partagium, transpose les messages de ton forum existant vers le nouveau, et voilà, t'a un super forum complet comme celui de hardware.fr avec membres avatars etc ...
 
Et puis comme ça tu pourras m'aider sur le topic que g posé :"problème forum xmb"  :D

n°332683
BenJ9002
Posté le 13-03-2003 à 23:04:31  profilanswer
 

tetram78fr a écrit :

UN conseil :
 
va sur www.xmbforum, télécharge le partagium, transpose les messages de ton forum existant vers le nouveau, et voilà, t'a un super forum complet comme celui de hardware.fr avec membres avatars etc ...
 
Et puis comme ça tu pourras m'aider sur le topic que g posé :"problème forum xmb"  :D  


 
Euh ouais mais non :D
 
Je préfère coder mon forum moi meme, meme s'il est moins bien que les tous prets, j'ai comme ca la satisfaction de mon truc à moi :) Et puis les tous faits, j'aime pas et en plus ils s'intègrent mal à mon site qui est déja en place lui [:spamafote]
 
Bon courage pour ton problème en tous cas

n°332731
BenJ9002
Posté le 13-03-2003 à 23:50:52  profilanswer
 

:bounce:

n°332750
BenJ9002
Posté le 14-03-2003 à 01:04:17  profilanswer
 

:hello:

n°333049
BenJ9002
Posté le 14-03-2003 à 10:44:52  profilanswer
 

encore un petit up une dernière fois.
 
Juste pour un petit exemple de comment vous remplissez votre base pour le suivi des messages :jap:

n°333618
BenJ9002
Posté le 14-03-2003 à 15:54:53  profilanswer
 

Core 666 a écrit :


Pour la liste des sujets, après ca dépend comment tu concois ton système. J'utilise une table de 480 000 enregistrements qui sert à stocker la position de chaque vue, la jointure est très rapide, j'arrive même pas à 2% de différence entre la sélection de x sujets et la sélection de x sujets + x vues :)


 
Core 666, tu pourrais m'indiquer comment t'as fait ta table ? pasque la je commence à déprimer. j'ai mon forum qui part en couille [:zoutte]  
Pour le reste je me débrouillerais, mais je suis emmerdé par le format de ma table.
 
Merci beaucoup d'avance.
Benjamin

n°334392
Core 666
Posté le 16-03-2003 à 13:27:24  profilanswer
 

benj9002 a écrit :


ca fait quand meme une requete de plus :/


Certes, mais tu pourrais en faire 10 comme ca sur une même page que ton temps de génération n'en serait pas affecté (compte p'être 2 ms au pire avec une petite machine) :D
 
 

Citation :

ma table pour la liste des sujets, je veux pas y toucher, à la limite, je peux ajouter des champs, mais c'est tout. Mais pour ton stockage des vues t'as donc une table dédiée ? Elle est comment alors cette table ? Et tu stoques quoi dedans ?


Il n'est pas question de modifier la table dans laquelle tu stockes les sujets, ca ferait un truc carrement dégueulasse, mais de créer une table dédiée. Celle que j'utilise contient 7 champs mais comme mon modèle de données n'est pas public je te donne que les 3 principaux, qui sont suffisants :
 
- Id du membre
- Id du sujet
- Id du dernier message du sujet
 
Il suffit juste de faire une jointure sur cette table lors de la sélection de la liste des sujets pour avoir toutes les infos nécessaires à la création des drapeaux. Pour chaque ligne, tu compare l'id du dernier message du sujet de ta table drapeaux avec l'id du dernier message actuel :
- S'il existe et qu'il est inférieur : il y a eu de nouvelles réponses
- S'il existe et qu'il est identique : pas de nouvelles réponses
- S'il n'existe pas : le sujet n'a pas été lu, tu n'affiches rien
 
Il faut évidement que tu stockes l'id de tes messages sur un champ auto_increment.

n°334420
BenJ9002
Posté le 16-03-2003 à 14:26:28  profilanswer
 

Core 666 a écrit :


Certes, mais tu pourrais en faire 10 comme ca sur une même page que ton temps de génération n'en serait pas affecté (compte p'être 2 ms au pire avec une petite machine) :D


Pour l'update, en effet, j'ai pas l'inpression que ca greve vraiment les perfs du serveur
 

Core 666 a écrit :


Il n'est pas question de modifier la table dans laquelle tu stockes les sujets, ca ferait un truc carrement dégueulasse, mais de créer une table dédiée. Celle que j'utilise contient 7 champs mais comme mon modèle de données n'est pas public je te donne que les 3 principaux, qui sont suffisants :
 
- Id du membre
- Id du sujet
- Id du dernier message du sujet
 
Il suffit juste de faire une jointure sur cette table lors de la sélection de la liste des sujets pour avoir toutes les infos nécessaires à la création des drapeaux. Pour chaque ligne, tu compare l'id du dernier message du sujet de ta table drapeaux avec l'id du dernier message actuel :
- S'il existe et qu'il est inférieur : il y a eu de nouvelles réponses
- S'il existe et qu'il est identique : pas de nouvelles réponses
- S'il n'existe pas : le sujet n'a pas été lu, tu n'affiches rien
 
Il faut évidement que tu stockes l'id de tes messages sur un champ auto_increment.


 
Finalement, c'est bon, j'ai fait comme ca et ca marche trop bien. un chouia lent mais ca va :)
D'ailleurs on en discute la : http://forum.hardware.fr/forum2.ph [...] h=&subcat= si tu veux

mood
Publicité
Posté le   profilanswer
 


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

  forum en PHP : problème de suivi des messages [résolu]

 

Sujets relatifs
[PHP-MySQL] Existe-t il une fonction qui renvoie la date de ....Question optimisation (forum)...
Probleme d'espaces dans un <input> et phpprobléme pour récupérer des emails
[PHP] Cherche un script sur l'état d'un serveur...Problème d'en-tête avec la fonction mail()
FTP et PHPcolorisation de code PHP
Problème d'images défilantesProblème d'affichage avec &nbsp et modzilla dans routine php
Plus de sujets relatifs à : forum en PHP : problème de suivi des messages [résolu]


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