Ik vraag me af of een gelezen/ongelezen systeem nou zo moeilijk is?
Je kunt toch ook gewoon een tabel met topics hebben, en een tabel met topicsGelezen, daarin zet je dan id van gebruiker en laatste post id in dat topic.
Je kunt beter een tabel maken met: id | laatstgelezen | userid | topicid
en dan bij laatst gelezen erin zetten wanneer hij voor het laatst gelezen is, en het userid van het id van de gebruiker. Als de laatste post later is dan het laatst gelezen dan is hij nog niet gelezen.
Je moet kijken op de index: - Is er op "markeer alles als gelezen" gedrukt - Is er op "markeer alles uit deze catagorie als gelezen" gedrukt - Is er een topic met een ongelezen post in de catagorie
En dat moet je dan vergelijken met elkaar. Daaruit komt dan naar voren of er in de catagorie nog ongelezen berichten zitten.
Vervolgens moet je met de topicindex hetzelfde doen: - Is er op "markeer alles uit deze catagorie als gelezen" gedrukt - Is er een topic met een ongelezen post in de catagorie (- Wat is de laatste gelezen post > Voor een redirect)
Het lijkt misschien makkelijk, maar je moet ook denken aan performance. Je kan niet zomaar een while, in een while in een while gebruiken. Je zult dus moeten werken met joins en subquerys. Bovendien zal je ook moeten kijken naar de indices die je gebruikt. Als je niet de goede rows van de goede index voorziet zal je ook snel de performance van je forum achteruit zien gaan. Eventueel moet je nog dingen gaan cachen.
Een hoop werk waar je voorafgaand aan moet denken. Het programmeren daarentegen is dan inderdaad wel weer wat makkelijker als je al het bovenstaande al hebt uitgedacht.
Zoals Rik inderdaad zegt is het maken van een gelezen/ongelezen systeem heel makkelijk. Het daar in tegen goed doen, zonder ontiegelijk veel load, is moeilijk