Mailinglisten-Archive |
>Hallo, >ich muss nun auch mal posten :) >Seit 3 Tagen verzweifele ich an einem Problem. >Es geht um ein DiskussionsThread, wo auf Nachrichten >geantwortet wird und diese N tief. >Die DB-Tabelle sieht ungef. so aus: >message_id | parent_id | subject > > 1 - Super tolle Frage > 2 - Noch ne tollere Frage > .... > 18 1 AW: Super toole Frage > 36 18 AW: AW: Super toole Frage >Wahrscheinlich bin ich nur zu "Doo.."... Es muss doch irgendein >eine Array Schweinerei geben, diese diese performant durchparst und >die Nachrichten in der richtigen Reinfolge sortiert. >Ich habe mir auch die ganzen anderen Foren angesehen. Ist aber nicht >das richtige dabei. HI Also ich habe gerade da genau das selbe in der Mangel :) Allerdings habe ich es ein wenig anders gelöst. Ich nehme mehrer DB Eine für die Foren eine für die Threadtitel und eine für die Postings. Wenn du es so machst dann dürftest du bei parent_id nicht reinschreiben auf welches Posting geantwortet wurde, sondern auf welchen Thread. Dann kannst du es ganz gut selektieren SELECT * FROM table WHERE parent_id = 1 ORDER BY message_id /* für Thread 1 */ Wenn du es so staffeln willst das mann auch sieht wer worauf geantwortet hast must du wohl noch eine Spalte machen "re_to" dann könnte es so aussehen SELCT * FROM table WHERE parent_id = 1 ORDER BY re_to, message_id /* für Thread */ Dann hast du es in der Ergenissliste so stehen das alle Antworten auf den gewählten Thread sortiert nach re_to und sortiert nach message_id message_id | parent_id | re_to |subject 1 - - Super tolle Frage 2 - - Noch ne tollere Frage .... 18 1 1 AW: Super toole Frage 36 1 18 AW: AW: Super toole Frage 55 1 18 AW: AW: Super toole Frage 59 1 1 AW: Super toole Frage 95 1 55 AW: AW: AW:Super toole Frage Jezt sollte sich die Spalte re_to immer auf message_id beziehen cu Stephan
php::bar PHP Wiki - Listenarchive