ce forum [php] - Programmation
Marsh Posté le 24-12-2001 à 10:33:38
sur le forum que je programme j'ai fait ça avec des cookies moi et je pense que sur celui-là c pareil.
En fait lors de la visite d'un utilisateur un cookie est envoyé et aps quand il revient tu compares cette date à celle (la date)du dernier message et si la date du dernier message est supérieure à la date contenue dans le cookie ça veut dire qu'il y a des nouveaus messages.
[edtdd]--Message édité par sylsau--[/edtdd]
Marsh Posté le 24-12-2001 à 10:46:39
je pense pas que ce soit un cookie. Moi je consulte le forum depuis plusieurs PC et les messages consultés apparaissent toujours lu, quelque soit le pc...
Marsh Posté le 24-12-2001 à 10:56:18
ho non non !!
c'est absolument pas des cookies et ces fonctions :
1-savoir dans quel sujet on a un message
et
2-savoir si quelqu'un a repondu apres notre message
sont basés sur des requetes ou il faut faire des recherches dans la table des messages ce qui est TRES TRES gourmand ... et meme en ayant des requetes parfaites (* x const).
voici la requete que j'ai develloppé pour mon forum :
if( sql_num_sel(" SELECT 1 FROM sujet,reponse where (reponse.id_inscri='$idlog' AND reponse.id_sujet='$tab[id_su]' || (sujet.id_inscri='$idlog' AND sujet.id_su='$tab[id_su]' LIMIT 1 " ) ){
celle ci n'est pas optimisé mais tu vois le principe.
il faut savoir que cette requete est dans une boucle et est executé pour chaque sujet ce qui est vraiment un luxe ..
juste un petit mot par rapport ce forum : le ou les personnes qui l'ont develloppé ont fait vraiment un super script -> chapeau; bien mieux qu'un vbulletin ou n'importe quel autre ..
[edtdd]--Message édité par potiron--[/edtdd]
Marsh Posté le 24-12-2001 à 11:04:20
en tous cas pour mon forum j'utilise des cookies et ça marche très bien.
Marsh Posté le 24-12-2001 à 11:13:20
keops > ici, ce n'est pas basé sur des cookies
si tu regardes des messages, tu supprimes les cookies, et que tu te reconnectes, les messages seront considérés comme lus
Marsh Posté le 25-12-2001 à 10:14:26
POWA a écrit a écrit : Comment est fais le fait que 'un message est considéré comme lu ou non ( si il y a des nouvelles réponses ) c'est sous Mysql, mais ca doit faire des tables énormes ? |
Elle est pas mal celle là, tu poses des questions ici pour pas passer pour un newbie sur TC
Marsh Posté le 25-12-2001 à 14:57:56
sylsau a écrit a écrit : sur le forum que je programme j'ai fait ça avec des cookies moi et je pense que sur celui-là c pareil. En fait lors de la visite d'un utilisateur un cookie est envoyé et aps quand il revient tu compares cette date à celle (la date)du dernier message et si la date du dernier message est supérieure à la date contenue dans le cookie ça veut dire qu'il y a des nouveaus messages. |
pour ce forum, je ne l'ai pas fait à partir de cookie (avant oui mais maintenant non, depuis la mise en place du système de flag en fait)
Marsh Posté le 25-12-2001 à 14:58:42
potiron a écrit a écrit : juste un petit mot par rapport ce forum : le ou les personnes qui l'ont develloppé ont fait vraiment un super script -> chapeau; bien mieux qu'un vbulletin ou n'importe quel autre .. |
Merci
Marsh Posté le 25-12-2001 à 15:00:44
potiron a écrit a écrit : celle ci n'est pas optimisé mais tu vois le principe. il faut savoir que cette requete est dans une boucle et est executé pour chaque sujet ce qui est vraiment un luxe .. |
Nop, j'ai codé ca de telle façon qu'il n'y a qu'une seule requète à faire pour avoir les infos sur la lecture des topics
Marsh Posté le 25-12-2001 à 16:35:10
joce a écrit a écrit : Nop, j'ai codé ca de telle façon qu'il n'y a qu'une seule requète à faire pour avoir les infos sur la lecture des topics |
une seule requete pour TOUS les sujets
alors y doit pas y avoir les memes fonctionnalités ou j'ai pas tout compris ..
c'est bien toi qui a fait le script de ce forum ?
Marsh Posté le 25-12-2001 à 16:48:52
potiron a écrit a écrit : une seule requete pour TOUS les sujets alors y doit pas y avoir les memes fonctionnalités ou j'ai pas tout compris .. c'est bien toi qui a fait le script de ce forum ? |
vivi une seule requète pour tous les sujets (mais bon après y a du traitement PHP à faire )
et oui c'est moi qui ait codé le forum
[edtdd]--Message édité par joce--[/edtdd]
Marsh Posté le 25-12-2001 à 17:03:44
joce a écrit a écrit : vivi une seule requète pour tous les sujets (mais bon après y a du traitement PHP à faire ) et oui c'est moi qui ait codé le forum |
une ptit boocle for pour un tablo de données et ca rulez
Marsh Posté le 25-12-2001 à 17:04:44
ReplyMarsh Posté le 25-12-2001 à 17:06:12
chui en train de faire le truk poor mon forum et c comme ca que g commencé
ca a l'air de marcher enfin j'v voir
Marsh Posté le 25-12-2001 à 17:30:54
autruche a écrit a écrit : chui en train de faire le truk poor mon forum et c comme ca que g commencé ca a l'air de marcher enfin j'v voir |
reste à voir la vitesse à laquelle ca marche
Marsh Posté le 25-12-2001 à 17:42:36
joce a écrit a écrit : reste à voir la vitesse à laquelle ca marche |
t'a fini oui ?
mon serveur y fai la gueule !
Marsh Posté le 25-12-2001 à 18:27:53
ReplyMarsh Posté le 25-12-2001 à 18:29:39
tu veux qu'on transfert la base HFR sur ton forum ? (tu vas pleurer quand tu vas voir qu'il te faut environ 1mn pour afficher une page )
Marsh Posté le 25-12-2001 à 18:41:54
j'voa pa le changement ....
si tt un peu futé deja tu poorai voir la structure de mes tables
Marsh Posté le 25-12-2001 à 18:42:14
car je sais pas changer le login/pass de mysql
Marsh Posté le 25-12-2001 à 19:57:21
joce a écrit a écrit : vivi une seule requète pour tous les sujets (mais bon après y a du traitement PHP à faire ) |
mais attend .. il faut que pour chaque sujet tu recups :
1-est ce que ce login (visiteur present) a un message en rapport avec le sujet
2-si oui est ce qu'un message a été ecrit a une date (ou ID) superieur a son message
ben la je vois pas comment faire ca en UNE SEULE REQUETE pour TOUS les sujets a afficher .. car a chaque fois tu as des retours de vars a faire + des conditions + ... je vois pas en quoi le traitement en PHP seul sans requete ulterieur peut t'aider .
Marsh Posté le 25-12-2001 à 20:00:20
il stocke les numéro de chak topic vu/participé dans une table (qu'il limite a 100 topics par ex), a part.
et comme ca il fait une requete ds cette table pour untel user
et a l'affichage des topic il teste si le numéro du topic correspond a une entréé ds cette table et affiche / affiche pas le drapo en conséquent
Marsh Posté le 25-12-2001 à 20:00:58
pour info, joce utilise + de 80 tables pour ce forum
Marsh Posté le 25-12-2001 à 20:08:49
ah ok !!
donc les fonctionnalités sont bien limité .. c'est ce que je pensais sinon c'est pas possible de tout faire en 1 requete .
Marsh Posté le 25-12-2001 à 20:14:09
autruche a écrit a écrit : il stocke les numéro de chak topic vu/participé dans une table (qu'il limite a 100 topics par ex), a part. et comme ca il fait une requete ds cette table pour untel user et a l'affichage des topic il teste si le numéro du topic correspond a une entréé ds cette table et affiche / affiche pas le drapo en conséquent |
tu extrapoles mon petit, je gère pas ca comme ca
Marsh Posté le 25-12-2001 à 20:15:14
potiron a écrit a écrit : ah ok !! donc les fonctionnalités sont bien limité .. c'est ce que je pensais sinon c'est pas possible de tout faire en 1 requete . |
Si c'est tout à fait possible de faire ca en une seule requète, notamment avec la méthode décrite par Sky, heu pardon autruche
[edtdd]--Message édité par joce--[/edtdd]
Marsh Posté le 25-12-2001 à 20:15:34
potiron a écrit a écrit : ah ok !! donc les fonctionnalités sont bien limité .. c'est ce que je pensais sinon c'est pas possible de tout faire en 1 requete . |
c surtout pour ne pas trop alourdir le forum ...
imagine que la table des drapo soit infinie... le tps pour parcourir toutes les entrées a chak view de chak user,
le forum serait vite a plat.
Marsh Posté le 25-12-2001 à 20:16:55
joce a écrit a écrit : tu extrapoles mon petit, je gère pas ca comme ca |
bah moi chui en train de faire comme ca
Marsh Posté le 25-12-2001 à 20:17:20
Ouais, c'est pour ca que ca va encore plus ramer
Marsh Posté le 25-12-2001 à 20:19:38
spa drole
sans coeur, tu pense jamais au celeron de mon serveur ?
Marsh Posté le 25-12-2001 à 20:21:33
ba moi j'y pense hein, avec mon forum il se sentirait revivre ton céléron
Marsh Posté le 25-12-2001 à 20:23:22
une bonne raison poor me faire de la place sur ppc
Marsh Posté le 23-12-2001 à 22:14:18
Comment est fais le fait que 'un message est considéré comme lu ou non ( si il y a des nouvelles réponses )
c'est sous Mysql, mais ca doit faire des tables énormes ?