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

 


 Mot :   Pseudo :  
 
 Page :   1  2  3
Page Suivante
Auteur Sujet :

forum php objet?

n°81000
speedyop
Posté le 12-12-2001 à 16:19:40  profilanswer
 

Reprise du message précédent :
en variable globale...comme tu le ferait pour la configuration des connection db...

mood
Publicité
Posté le 12-12-2001 à 16:19:40  profilanswer
 

n°81003
ethernal
Chercheur de vérité...
Posté le 12-12-2001 à 16:22:42  profilanswer
 

speedyop a écrit a écrit :

pkoa faire 2 tables distincte pour message et sujet? mttre un champs refmessage, si a 0 c'est un sujet sinon il prends la valeur de l'id message auquel on reponds (celui du sujet par default), garder le lastmessage_id qui sert juste pour les refmessage=0 (sujet) ca sert pour faire les sujet lu ou pas : pour chaque forum on stocke dans une autre table le plus grand lastmessage_id des sujet qu'on a lu et on dans la page d'affichage des discussion on compare si il est plus grand que celui du sujet (si plus grand message, sinon message non lut...)
c'est pas le systeme de joce qui doit faire des jointures...  




 
ouaip mais alors pour afficher tes sujets tu vas les tirer d'une table de 40.000 enregs... en plus tout tes sujet/messages tu dois les stocker en type text

n°81008
ethernal
Chercheur de vérité...
Posté le 12-12-2001 à 16:25:57  profilanswer
 

speedyop a écrit a écrit :

en variable globale...comme tu le ferait pour la configuration des connection db...  




 
humça me semble aussi la seule solution, mais j'aime pas les globales ... :( enfin faut faire des sacrifices
 
une idée pour intégrer les n° pages dans la classe qui liste des topics/messages (je sais le faire, mais je me demande quel attribut ajouter à ces classes ?)
 
bêtement un attribut numpage  ? mais je dois le passer à la classe aussi pour savoir ou elle en est...
sans compter encore une fois que dans ma table (et ma classe config) j'ai le nombre d'enreg/topic par page qui sont défini...
donc elle doit encore en global ...

 

[edtdd]--Message édité par ethernal--[/edtdd]

n°81009
speedyop
Posté le 12-12-2001 à 16:30:00  profilanswer
 

la clause limit de mysql m'a l'air tres performante, on ne prend qu'un recordset de ce que l'ont veut et pas la section d'un grand recordset qui nous interesse... et de toute facon aves un peu d'ambition le forum doit pouvoir fonctionner avec 1 000 000 de lignes de message non? ;)

n°81010
gizmo
Posté le 12-12-2001 à 16:31:32  profilanswer
 

skylight a écrit a écrit :

 
 
c'est ce que j'avai remarké aussi
les drapeaux disparaissent aux fur et a mesure ...
 
au fait tu a jeté un oeil a mes sourceS ?  




 
pas encore eu le temps, j'avais les anciennes, avec le bug des messages fantomes, mais j'ai pas encore pris les nouvelles.

n°81022
speedyop
Posté le 12-12-2001 à 16:41:03  profilanswer
 

ethernal a écrit a écrit :

 
 
humça me semble aussi la seule solution, mais j'aime pas les globales ... :( enfin faut faire des sacrifices
 
une idée pour intégrer les n° pages dans la classe qui liste des topics/messages (je sais le faire, mais je me demande quel attribut ajouter à ces classes ?)
 
bêtement un attribut numpage  ? mais je dois le passer à la classe aussi pour savoir ou elle en est...
sans compter encore une fois que dans ma table (et ma classe config) j'ai le nombre d'enreg/topic par page qui sont défini...
donc elle doit encore en global ...  




 
le plus simple est de mettre un champ supplementaire nbreponse, que tu update a chaque devalidation, insertion, effacement...(pas un update +1 -1 un update nbreponse=(select count...))...
 
ca commence a faire des tables moches mais l'espace etant moins un probleme que la performance...je pense qu'un base mysql ne supporte pas trop de connection alors moins y'a de requette...
 
de meme dans la table forum t'as des champ nbmessage [sum(nbmessage+1) where refmessage=0] et nbsujet [count(id) where refmessage=0]

n°81029
skylight
Made in France.
Posté le 12-12-2001 à 16:46:10  profilanswer
 

autre chose : j'aimerais bien utiliser pconnect au lieu de connect tout court .... mais quand utiliser mysql_close ?
car je vais pas le faire a chaque fin de page, ca serait inutile !

n°81033
ethernal
Chercheur de vérité...
Posté le 12-12-2001 à 16:50:43  profilanswer
 

speedyop a écrit a écrit :

le plus simple est de mettre un champ supplementaire nbreponse, que tu update a chaque devalidation, insertion, effacement...(pas un update +1 -1 un update nbreponse=(select count...))...  
 
ca commence a faire des tables moches mais l'espace etant moins un probleme que la performance...je pense qu'un base mysql ne supporte pas trop de connection alors moins y'a de requette...  
 
de meme dans la table forum t'as des champ nbmessage [sum(nbmessage+1) where refmessage=0] et nbsujet [count(id) where refmessage=0]  




 
je comprends pas :(
 

skylight a écrit a écrit :

autre chose : j'aimerais bien utiliser pconnect au lieu de connect tout court .... mais quand utiliser mysql_close ?
car je vais pas le faire a chaque fin de page, ca serait inutile !  




 
le mysql_close se fait automatiquement à la fin de chaque page je pense

n°81054
speedyop
Posté le 12-12-2001 à 17:21:56  profilanswer
 

ben actuellement explique moi ta methode pour optenir le nombre de message dans une discussion et le nombre de message dans un forum...

n°81070
ethernal
Chercheur de vérité...
Posté le 12-12-2001 à 18:16:35  profilanswer
 

speedyop a écrit a écrit :

ben actuellement explique moi ta methode pour optenir le nombre de message dans une discussion et le nombre de message dans un forum...  




//---------------------------------------
//constructeur de la classe forum
function Forum($pForumID="" ){
  $query= "select id,nbmessages,... from Forums where id='$pForumID'";
  ...
  $this->nbMessages= $result->nbmessages;
}
//---------------------------------------
 
$forum->getNbMessages();
 
idem pour avoir le nombre de messages dans un topic
 
qd on insère un message dans la bd il incrémente le nombre de messages dans la table forum et le nombre de message dans le topic.

mood
Publicité
Posté le 12-12-2001 à 18:16:35  profilanswer
 

n°81072
speedyop
Posté le 12-12-2001 à 18:18:42  profilanswer
 

bah j'ai rien dit alors t'as deja le champs en base

n°81077
ethernal
Chercheur de vérité...
Posté le 12-12-2001 à 18:21:50  profilanswer
 

speedyop a écrit a écrit :

bah j'ai rien dit alors t'as deja le champs en base  




 
heu oui c'est le "nbposts" pas le "nbmessages", sorry ;)
thx  :jap:  
 
mais pq tu m'avais répondu ça à mon problème d'affichage par page ?

n°81080
speedyop
Posté le 12-12-2001 à 18:32:15  profilanswer
 

parceque javais pas compris  :jap:

n°81136
gizmo
Posté le 12-12-2001 à 22:10:15  profilanswer
 

pconnect ferme la connexion automatiquement après 10 minutes d'inactivité, par défaut.

n°81141
ethernal
Chercheur de vérité...
Posté le 12-12-2001 à 22:26:12  profilanswer
 

bizarre, il semblerait qu'avec un pconnect le temps d'affichage soit plus long de 0.002 -0.003 secondes (écart constant, quel que soit le nb d'enregs)
 
une raison particulière ?

 

[edtdd]--Message édité par ethernal--[/edtdd]

n°81157
skylight
Made in France.
Posté le 12-12-2001 à 23:14:51  profilanswer
 

gizmo a écrit a écrit :

pconnect ferme la connexion automatiquement après 10 minutes d'inactivité, par défaut.  




 
oui mais ca ouvre autant de connexion que tu l'appelles ...
car mon connect je l'inclus a chaque page ...
je m'imagine pas faire un pconnect a chaque page

n°81170
gizmo
Posté le 13-12-2001 à 00:27:55  profilanswer
 

skylight a écrit a écrit :

 
 
oui mais ca ouvre autant de connexion que tu l'appelles ...
car mon connect je l'inclus a chaque page ...
je m'imagine pas faire un pconnect a chaque page  




 
non, le pconnect garde essaye de trouver une connexion déja active, ce qui entraine les petit délais dont parle ethernal. Et ce n'est que s'il n'en trouve pas qu'il en créer une. Donc ca permet d'une part de limiter les connexions d'un même utilisateur et d'autre part de partager des connexions entre plusieurs personnes.

n°81171
speedyop
Posté le 13-12-2001 à 00:29:10  profilanswer
 

et c plus efficace?

n°81201
gizmo
Posté le 13-12-2001 à 10:01:05  profilanswer
 

speedyop a écrit a écrit :

et c plus efficace?  




 
c'est ce que semble dire la majorité des sites que j'ai vu. Mais je sais pas testé véritablement, vu que la charge sur mon forum se limite a... moi!

n°81205
speedyop
Posté le 13-12-2001 à 10:51:12  profilanswer
 

ok en gros c'est plus efficace si mysql est surchargé de travail...bon ben on verra plus tard alors ;) sinon j'ai fait mas class de db_query... a votre avis vaut mieux ouvrir la connection qu'une seule fois et qu'elle se ferme a la fin de la page ou l'ouvrir, faire sa requette et le fermée aussitot?, d'facon vu que c'est un objet maintenant je pourrait le changer n'importe kan ;)

n°81286
skylight
Made in France.
Posté le 13-12-2001 à 15:09:54  profilanswer
 

:bounce:  
 
dites j'ai pas bien compris votre histoire d'objets ...  :??:

n°81287
FLY LM
Posté le 13-12-2001 à 15:14:59  profilanswer
 

skylight a écrit a écrit :

:bounce:  
 
dites j'ai pas bien compris votre histoire d'objets ...  :??:  




 
Tu travailles trop !!! :lol: :lol:

n°81291
speedyop
Posté le 13-12-2001 à 15:24:55  profilanswer
 

skylight a écrit a écrit :

:bounce:  
 
dites j'ai pas bien compris votre histoire d'objets ...  :??:  




ben c'etait essayer d'adopter une demarche de conception de site (dans ce cas precis un forum) plus propres, plus reutilisable, plus structuré, plus adaptable, plus pro...
Je pense que la plupart des developpeurs web php qui ont participé a ce topic cherchent quelques chose de nouveaux, pour accroitre leur connaissance et leur compétences.
La programmation objet est un sujete a bcp de controverse, en effet c'est un paradoxe de vouloir utiliser une structure sachant que son temps de developpement sera plus long, dans le monde du developpement oueb, ou la rapidité de developpement est un facteur majeur.
Mais comme disait l'autre:  

Citation :

"rien ne sert de courir, il faut partir a point"


 
Combien de systeme d'authentification de user avez vous developper? c'est l'interet des classe: de beau objet reutilisable.
Dasn le cas des forums c'est clair que tout ne sera pas utilisable en dehors ...D'un forum, mais de voir tout ces petits objets interagir entre eux, se marier, se remplir, se créer me donne une tel satisfaction que je ne cherche meme plus de "fausse" raison de les utiliser :D, j'en suis tombé amoureux et c'est pour moi une solution progressive d'aborder le monde de la vrai programmation: la ou ca cause C++, Java, pointeur, application, compilation et tout ca qui pour l'instant reste hors de porté d'un developpeur web  :sweat:

n°81294
skylight
Made in France.
Posté le 13-12-2001 à 15:26:43  profilanswer
 

en gros tu veux rendre quelques morceaux de ton forum polyvalents  :??:

n°81295
speedyop
Posté le 13-12-2001 à 15:28:26  profilanswer
 

non du tout :D je veut me faire plaisir en programmant et en fesant klk chose que je n'ai pas l'habitude de faire, reflechir avant d'agir :D
 
car ca revient un peu a ca la conception objet, meme si la modification de l'objet est meme plus facile que la modification d'un code...

mood
Publicité
Posté le   profilanswer
 

 Page :   1  2  3
Page Suivante

Aller à :
Ajouter une réponse
 

Sujets relatifs
Forum php[Forum] Pourrait-on ajouter un thème Java ? - DONE ;-)
[PHP] Dalai ForumForum
mesurer TRES precisement l'utilisation processeur+requete d'un forum ?[BD FORUM] Combien de tables pour faire un forum ?
Forum en fichier txt[ PHP ]: Ex. code formatage texte & smilie pour chat/forum
Positionnement d'objet 3D sur terrain[php] probleme classique de forum : pros des regexp demandés!
Plus de sujets relatifs à : forum php objet?


Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)