HELLinG3R Geschrieben 10. März 2004 Teilen Geschrieben 10. März 2004 Hallo, ich habe die aufgabe bekommen, bei einem "Nachrichtensystem" auf PHP4/MySQL-Basis die Anzeige zu programmieren. Ich werde das auf Smarty-Templateebene machen. Aber bevor ich mich ans direkte Coden mache, möchte ich mal nach euren ideen fragen: Die konkrete Umsetzung habe ichs chon in etwa, aber es hapert noch etwas bei der Aufteilung in Seiten: Und zwar sollen jeweils immer 20 "Nachrichten" angezeigt werden, eine Nachricht ist ein Datenbankeintrag mit ID, Poster_ID, inhalt und zeitpunkt. Jetzt die frage: wie stelle ich es an, dass die Einträge automaitsch in seiten gesplittet werden? (so wie hier im Forum) ich habe daran gedacht, dass das entweder durch ein Array, in das ich ALLE nachrichten einlese, zu lösen ist oder aber über eine MySQL-Funktion realisierbar wäre... (MySQL: eine neue temporäre ausgabespalte anlzulegen, in denen die posts durchnummeriert werden. dann kann ich aufgrund der immer gleichen nummerierung wählen, ob ich 20-30 oder 10-20 anschauen möchte) Das Problem ist, dass die filterung (also was man auf den Schirm bekommt) durch die User-ID geshcieht. das bedeutet wiederum, dass die POST_ID (auto_increment) NICHT fortlaufend ist, da ja zwischen den eigenen nachrichten auch nachrichten von anderen usern abgelegt sein können.... wie würdet ihr sowas umsetzen? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
root@localhost Geschrieben 10. März 2004 Teilen Geschrieben 10. März 2004 hi wenn ich dich richtig verstanden habe sollte sich das so lösen lassen: SELECT * FROM PostTabelle WHERE UserID='$aktuelle_user_id' SORT BY datum; dann kriegst du jeweils nur die nachrichten zu dem zugehörigen benutzer, und die zB sortier nach dem Datum oä. vielleicht hilfts dir ja ciao r##t Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
HELLinG3R Geschrieben 10. März 2004 Autor Teilen Geschrieben 10. März 2004 danke, das ging ja schnell! aber ich konnte anscheinend nicht genau rüberbringen, um was es geht... okay: wie ich die daten rausbekomme etc weis ich. ich weis auch wie ich nur die daten des users ausgebe. es geht konkret darum, dass der btreffende user nur 20 seiner 1000xxxxx nachrichten auf einmal angezeigt bekommt, also 20 pro seite, und er soll die möglichkeit haben, sich durch die jeweiligen 20er-blöcke (also seiten) durchzuklicken. so wie hier im forum, so stelle ich mir das vor mit dne seiten... Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
root@localhost Geschrieben 10. März 2004 Teilen Geschrieben 10. März 2004 hi nochmal, mit "LIMIT 0 , 20" am ende der SQL abfrage kannst du dir den gewünschten block aussuchen. in diesem fall 0 -20 . und eine variable mit einem link übergeben wirst du wohl noch schaffen ; ) meine überlegung: <? $add = 20; if ( $HTTP_GET_VARS["zeige_ab"] == "") { $ab = $add; } else { $ab += $add; } ?> <a href="<?=$PHP_SELF."?zeige_ab=".$ab."?>"> bis <?=$ab ?></a> ciao jay ps : sowas is standard ! Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
HELLinG3R Geschrieben 10. März 2004 Autor Teilen Geschrieben 10. März 2004 okay, danke oben hast du nix von LIMIT erwähnt, aber jetzt wo du's sagst, ich habe davons chon mal in der doku gelesen.... danke (p.s.: bin doch noch im ersten Jahr Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.