| | | | |
| |||||||
| PHP-Fortgeschrittene Arbeiten mit PHP ohne Einschränkungen |
|
| | LinkBack | Themen-Optionen | Thema bewerten |
| | |
| PHP Code Flüsterer Registriert seit: 21.08.2005 Beiträge: 4682 PHP-Kenntnisse: Fortgeschritten | |
| | |
| Erfahrener Benutzer | Hallo zwutz, danke zunächst für deine Antwort. Ja, so in etwa sah mein Plan aus. Beim Erstellen von News für jeden Nutzer einen Eintrag anlegen, dass der die News nicht gelesen hat. Sobald er dies getan hat, dein Eintrag aus der Tabelle wieder löschen. Somit enthält sie immer nur die aktuell ungelesenen Einträge. Anders herum würde ich immer, wenn ein User die News gelesen hat, einen Eintrag erstellen. Das würde auf Dauer ziemlich wachsen, oder? Außerdem will ich beim Auslesen ja gerade die News, die der User noch nicht gelesen hat. Das war meine Idee dahinter...
__________________ Je mehr ich lerne, desto mehr wird mir bewusst, dass ich eigentlich nichts weiß. |
| | |
| | |
| Erfahrener Benutzer Registriert seit: 26.11.2008
Beiträge: 264
![]() | Gerade so wird ja ordentlich was in die DB gehämmert. Wenn für jeden Artikel ein Eintrag für "ungelesen" erstellt wird, dann wächst das recht schnell. Stell dir mal 200 User vor, von denen durchschnittlich 50 User einen Artikel lesen. Der Rest ist nicht mehr aktiv oder hat schlichtweg keine Lust zu lesen. Bei zwei Artikeln hättest du schon 300 überflüssige Einträge, bei vier Artikeln 600 usw... Dann doch lieber die gelesenen Artikel in eine Tabelle setzen. |
| | |
| | |
| Erfahrener Benutzer | Ich glaube, ich habe mich etwas unglücklich ausgedrückt, der Fall liegt bei mir glaube ich bisschen anders. Die Formulierung des Auftrags war: "Jeder Benutzer soll nach dem Anmelden auf der Startseite die drei aktuellsten Artikel sehen, mindestens jedoch diese, die er noch nicht gesehen hat." Als "gesehen" wird hier bereits das Anzeigen der Titel auf der Startseite definiert. D.h. sobald sich ein User anmeldet, sieht er direkt alle neuen Artikel und damit können diese als gelesen betrachtet werden. Fragt mich bitte nicht nach dem Sinn dieser Regelung, es ist eine feste Vorgabe. Damit dürfte ich auf Dauer deutlich weniger ungelesene als gelesene Artikel haben... Nachdem ich es jetzt beim dritten Anlauf hoffentlich hinbekommen habe, den Sachverhalt richtig darzulegen (sorry!), glaube ich immer noch, dass es sinnvoller und auch einfacher ist, die ungelesenen Artikel zu speichern... Oder bleibt ihr bei eurer Meinung?
__________________ Je mehr ich lerne, desto mehr wird mir bewusst, dass ich eigentlich nichts weiß. |
| | |
| | |
| Erfahrener Benutzer | gesehene Zeitspektren der News für jeden User speichern. Insofern man davon ausgehen kann das der User die News immer nach alter sortiert ansieht. so kannst du davon ausgehen das irgendwann alle gelesen sind ( das zeitspektrum also vom ältesten zum jüngsten reicht ) wenn nichts mehr außerhalb des gespeicherten Spektrums vorhanden ist. Das lässt sich mit ein paar Kniebeugen direkt über Datenbanktrigger lösen oder über etwas SQL + DateTime innerhalb von PHP
__________________ |
| | |
| | |
| Erfahrener Benutzer | Das ist eine sehr gute Idee! Ich speichere sowieso in der Datenbank den Zeitpunkt des letzten Logins und die News werden chronologisch sortiert. Nach einem Login kann ich davon ausgehen, dass er die ungelesenen News (die, die seit seinem letzten Login verfasst wurden) dann gesehen hat. Somit sind die ungelesenen News immer die zwischen dem jetzigen Zeitpunkt und dem letzten Login des Users. So komme ich sogar vollständig um eine weitere Tabelle herum. Vielen Dank!
__________________ Je mehr ich lerne, desto mehr wird mir bewusst, dass ich eigentlich nichts weiß. |
| | |
| | |
| Erfahrener Benutzer | Nicht unbedingt, wenn du beispielsweise 5 news auf der seite anzeigst, aber 20 vorhanden sind die ungelesen sein würden, sieht er nur die ersten 5, deswegen nicht unbedingt den last login nehmen, sondern effektive "sichtung" speichern, anhand von begin -> end - dates..
__________________ |
| | |
| | ||
| Erfahrener Benutzer | Zitat:
Ich werde es erstmal so versuchen. Danke aber dennoch für den Hinweis!
__________________ Je mehr ich lerne, desto mehr wird mir bewusst, dass ich eigentlich nichts weiß. | |
| | |
|
| Themen-Optionen | |
| Thema bewerten | |
|
|
Ähnliche Themen | ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| [MySQL] DB-Abfrage, nach jedem 2. Datensatz eine "Zwischenseite" | n10n50 | Datenbanken | 7 | 08.12.2011 22:03 |
| [Algorhytmus] User Klassifizierung | HCi | PHP-Fortgeschrittene | 4 | 12.05.2011 12:16 |
| immer nächste und vorherige News Link anzeigen | goodie | PHP Tipps 2010 | 6 | 10.11.2010 17:21 |
| Datei für den User umbenennen... | Thallius | PHP Tipps 2010 | 5 | 01.11.2010 14:00 |
| $_SESSION user mit User aus DB abgleichen | josephh | PHP Tipps 2010 | 6 | 10.09.2010 21:53 |
| News Titel in Browser anzeigen? | Mimi87 | PHP Tipps 2010 | 6 | 06.09.2010 17:48 |
| Button um auf älterer News zu kommen. | Risk5o | PHP Tipps 2010 | 13 | 15.04.2010 01:24 |
| News system | Crithack | PHP Tipps 2009 | 1 | 26.11.2009 14:20 |
| User sollen eigenes Email-Konto im Adminbereich eingeben können!? | alex-bad-bad | PHP Tipps 2009 | 2 | 30.07.2009 11:44 |
| Projekt: User über Intranetpage erstellen, auf einen VoIP-Server | beta1234 | PHP Tipps 2009 | 2 | 22.07.2009 13:21 |
| [Erledigt] News anzeigen wenn "true" | Freakli | Datenbanken | 3 | 22.02.2009 18:57 |
| User mit PHP aus DB löschen | MistaJ | PHP Tipps 2008 | 10 | 01.12.2008 19:38 |
| CSS - Bild im div container überlappt andere container | Buschdieb | HTML, Usability und Barrierefreiheit | 13 | 19.07.2007 23:17 |
| Session: Untersch. Seiten f. eingeloggte User und norm. User | PHP Tipps 2005-2 | 2 | 20.07.2005 12:46 | |
| [Erledigt] MySQL user rausfinden | Datenbanken | 4 | 26.05.2005 12:15 | |