05-09-2006, 06:26 PM
J'utilise personnellement 2 tables, comme Horace l'a précisé ça simplifie grandement le multi-destinataires.
msg_inbox (ID-msg, ID-destinataire, status)
msg_messages (ID-msg, ID-expediteur, texte, date, etc...)
Rien n'empêche d'ajouter un champ "dossier" dans la table msg_inbox pour permettre aux utilisateurs de ranger leurs messages. L'utilisation du flag "status" permet d'avoir une corbeille
(on peut avoir un status "lu", "non lu", "corbeille", "supprimme").
Envoi d'un message à X destinataires :
- insertion d'une ligne dans msg_messages, et de X lignes dans msg_inbox (2 requêtes).
Suppression d'un message reçu :
- changement du flag "status" dans msg_inbox (1 requête).
Suppression totale du message (à des fins de nettoyage par exemple) :
- suppression des lignes avec ID-msg=$id_du_message_a_supprimer dans les tables msg_messages et msg_inbox (2 requêtes).
Rien de bien méchant donc
msg_inbox (ID-msg, ID-destinataire, status)
msg_messages (ID-msg, ID-expediteur, texte, date, etc...)
Rien n'empêche d'ajouter un champ "dossier" dans la table msg_inbox pour permettre aux utilisateurs de ranger leurs messages. L'utilisation du flag "status" permet d'avoir une corbeille
![Wink Wink](https://jeuweb.org/images/smilies/wink.png)
Envoi d'un message à X destinataires :
- insertion d'une ligne dans msg_messages, et de X lignes dans msg_inbox (2 requêtes).
Suppression d'un message reçu :
- changement du flag "status" dans msg_inbox (1 requête).
Suppression totale du message (à des fins de nettoyage par exemple) :
- suppression des lignes avec ID-msg=$id_du_message_a_supprimer dans les tables msg_messages et msg_inbox (2 requêtes).
Rien de bien méchant donc
![Smile Smile](https://jeuweb.org/images/smilies/smile.png)
Ressources [PHP][MySQL][
prototype.js]
![[Image: fav.png]](http://prototypejs.org/images/fav.png)