forked from spip/forum
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
![]() |
3 years ago | |
---|---|---|
action | 3 years ago | |
balise | 3 years ago | |
base | 3 years ago | |
formulaires | 3 years ago | |
inc | 3 years ago | |
lang | 3 years ago | |
modeles | 14 years ago | |
notifications | 7 years ago | |
prive | 3 years ago | |
public | 3 years ago | |
urls | 3 years ago | |
.gitattributes | 4 years ago | |
README.md | 9 years ago | |
TODO.md | 9 years ago | |
forum_administrations.php | 3 years ago | |
forum_autoriser.php | 3 years ago | |
forum_fonctions.php | 3 years ago | |
forum_ieconfig.php | 7 years ago | |
forum_pipelines.php | 3 years ago | |
paquet.xml | 4 years ago |
README.md
README
Quelques notes de documentation.
Modèle de données
Pour expliquer la façon dont le plugin forum stocke les messages de forums, prenons la conversation suivante :
- à 12:53, envoi du message
msg A
- à 13:44, envoi du message
msg B
- à 14:27, envoi d'une réponse au premier message :
[Re] msg A
- à 18:12, envoi d'une réponse à cette réponse :
[Re] [Re] msg A
Table spip_forum
dans la base de données
Les données sont stockées dans la table spip_forum
, avec un message par ligne. La conversation donnera donc la table suivante (on ne montre que les champs principaux) :
id_forum |
id_parent |
id_thread |
date_heure |
date_thread |
texte |
---|---|---|---|---|---|
1 | 0 | 1 | 12:53 | 18:12 | msg A |
2 | 0 | 2 | 13:44 | 13:44 | msg B |
3 | 1 | 1 | 14:27 | 18:12 | [Re] msg A |
4 | 3 | 1 | 18:12 | 18:12 | [Re] [Re] msg A |
Détaillons un peu le rôle de chaque champ :
champ | description |
---|---|
id_forum |
identifiant du message |
id_parent |
identifiant du message parent pour les réponses, ou 0 si c'est le premier message |
id_thread |
identifiant du premier message d'un thread |
date_heure |
heure du message (format un peu simplifié pour faire court) |
date_thread |
heure du dernier message du thread |
A noter également les deux champs id_objet
et objet
qui indiquent l'objet auquel le message est attaché (ex: id_objet = 3
et objet = article
pour un message de forum dans l'article numéro 3).
Relations entre id_forum
, id_parent
et id_thread
msg A
id_forum = 1 <---------+
id_parent = 0 |
id_thread = 1 ---------+
|
[Re] msg A |
id_forum = 3 <----+ |
id_parent = 1 ----|----+
id_thread = 1 ----|----+
| |
[Re] [Re] msg A | |
id_forum = 4 | |
id_parent = 3 ----+ |
id_thread = 1 ---------+
msg B
id_forum = 2 <----+
id_parent = 0 |
id_thread = 2 ----+
Relations entre date_heure
et date_thread
:
msg A
date_heure = 12:53
date_thread = 18:12 ----+
|
[Re] msg A |
date_heure = 12:53 |
date_thread = 18:12 ----+
|
[Re] [Re] msg A |
date_heure = 18:12 <----+
date_thread = 18:12 ----+
msg B
date_heure = 13:44 <----+
date_thread = 13:44 ----+