|
|
#1 (permalink) |
|
Erfahrener Benutzer
|
Für meine kleine Klassen-Homepage habe ich begonnen, ein einfaches Konversations-Script zu proggen. Die User haben die Möglichkeit sich gegenseitig Nachrichten zu schicken, die dann beim Aufruf in Form eines Chats erscheinen...
Prinzipielle Speicherung in der DB: message_id | user_id | ... | message_last In der message_last steckt die message_id drinnen, auf die quasi geantwortet wurde. Wenn eine neue Message erstellt wurde, ist hat sie den Wert 0. Wie kann ich nun alle in einer Schleife am Komfortabelsten aufrufen? Er soll quasi mit der kleinsten message_id von dem Gespräch beginnen und sich dann raufhanteln bis halt zur letzten Antwort... Also irgendwie so SELECT ... WHERE message_last = $current_messageid ...und das halt in einer Schleife... |
|
|
|
| Gesponsorte Links |
|
|
#2 (permalink) |
|
be forever curious
|
Uff, das würde ich nochmal überdenken. So brauchst Du ja n Datenbankabfragen für n Antworten.
Wenn Du allerdings zu "message_last" noch "message_first" pflegst als erste Nachricht einer Unterhaltung, könntest Du alle n Antworten auf einen Rutsch in einer einzigen Datenbankabfrage mit geringem Overhead auslesen.
.lange tage und angenehme nächte, tlx
:.whatthemovie.com (Screenshots raten) | PHP ExportForce-Klasse |
|
|
|
|
|
#3 (permalink) |
|
bekämpft die Mächte des Bösen
|
Wenn du dir nicht gemerkt hast, welche Tupel zu einer "Konversation" gehören, musst du dich durchhangeln. Wird der DB nicht wirklich gefallen.
Interessant für dich könnte dieser Thread sein: [PHP/MySQL] Vernünftiges Refsystem Nicht täuschen lassen, weil es da um Refebenen geht. Ob die Beziehung "werber->ref" oder "ursprungsnachricht->antwortnachricht" heißt, spielt keine Rolle. Sinnvoll wäre an deiner Stelle, eine "Konversations-ID" einzuführen. Eine ID, die
|
|
|
|
|
|
#4 (permalink) |
|
Fahrender Benutzer
|
Aus dem ersten Posting geht nicht hervor ob du Konversationen (die evtl. auch mit mehr als 2 Teilnehmern stattfanden) oder Dialoge nur zwischen zwei Usern anzeigen willst.
Im ersten Fall ist die Einführung einer KonversationsID sinnvoll. Woher soll denn aber, letzteren Fall vorausgesetzt, das Script wissen das eine neu begonnene Konversation bereits eine Historie besitzt? Diese Prüfung müsste im Eingabeformular durchgeführt werden. Ähm... Wenn die KonversationsID sich aus allen beteiligten UserIDs zusammensetzt gehts bei beidem.
--= erweiterte signatur =--
. . . Faviconerstellung . . . |
|
|
|
![]() |
| Gesponsorte Links |
| Anzeige |
| Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1) | |
| Themen-Optionen | |
| Ansicht | |
|
|
Ähnliche Themen
|
||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| [C++] Qt/WinApi: Wie funktionieren Events/Messages? | SvenF311 | Programmierung | 3 | 30.09.2011 16:30:04 |
| Spam Messages ? | connor | Abuse & Kontakt zum Team | 3 | 17.03.2010 09:33:05 |
| Suchen und 300.000 Lose kassieren Suche starten - Ein Begriff Ihrer Wahl suchen - Lose kassieren | noobxs | Lose4Refs (erledigt) | 0 | 27.06.2009 11:29:22 |