Performance Frage

dave_

Erfahrenes Mitglied
Ich möchte, dass angezeigt wird, ob zu Thema xy neue beiträge vorhanden sind..

ich mache es so: wenn man das thema liest (also das script aufruft),
wird in die spalte 'gelesen' die id des users eingetragen
(nach einer zeit stehen dann mehrere ids drin, mit einem trennzeichen dazwischen).

Beim auslesen aller themen werden alle ids in einen array gepackt. Nun wird überprüft,
ob die userid im array ist, oder nicht.
Wenn ja-> 'gelesen' ausgeben, wenn nein->'nicht gelesen' ausgeben

Wenn jemand antwortet, wird der inhalt des feldes 'gelesen' komplett geleert.

Wenn man nun das thema zweimal anschaut, ohne dass neue beiträge vorhanden sind,
steht die id allerdings 2 mal in der spalte.
Somit wird der array aus den userids immer grösser.


Was ist nun schneller: immer id eintragen (dann kann der array mal durchaus über 500 'indexe' haben),
oder immer erst zu überprüfen ob die id drin stehen, wenn nicht, eintragen (ist halt ein mysql query mehr).


---
eigentlich viel bla um nix, aber interessiert mich einfach :)

btw: wie machen das die 'grossen' foren, wie das vbulletin hier ?
Bis jetzt habe ich nämlich noch keins gesehen, das keine fehler in diesem bereich hatte.
 
Zuletzt bearbeitet:
also ich würde vorher prüfen ob die id schon da ist
denn wenn man bedenkt das ohne prüfung dein gelesen feld schnell
wachsen kann und du ja dies feld immer wieder durchforsten musst wird ja dies durchforsten ja immer zeitaufwendiger je grösser das gelesen feld wird...
bei der gelegenheit warum gehst du über array
ich würde die userid über strpos suchen :-)
 
Zurück