Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php/bd] Rozbudowany system wiadomości
Forum PHP.pl > Forum > Przedszkole
jastu
Witajcie,
pisze na potrzeby pewnej aplikacji wewnętrzny system wiadomości wysyłanych między jej użytkownikami. Problem zrodził się w momencie w którym pojawiło się wymaganie dot. przenoszenia wiadomości miedzy folderami (np z wysłanych do kosza). Najłatwiej byłoby zrobić dla każdego folderu oddzielną tabelę...ale co jeśli user chce sobie sam stworzyć folder. Można zrobić jedną tabelę (na kosz,wysłane,odebrane razem i dać flagi w kolumnie folder), tylko tu też jest problem z folderami tworzonymi przez użytkownika. Znacie jakieś zgrabne rozwiązanie tego problemu ?
AxZx
tabela folder
tabela wiadomosci z kolumna folder_id
Ociu
Nic innego jak kategorie w newsach czy artach.
id | name <- folders
mess_id | mess_name | folder_id <- messages
jastu
Odgrzewam...
jak rozwiązać problem wiadomości która u jednego użytkownika widnieje jako wysłana a u innego jako odebrana ? Jeśli jeden z nich usunię tą wiadomośc to zniknie ona z list obu użytkowników (zakładając że przechowujemy wszystko w jednej tabeli) ?

Wiem że można to zrobic przez widoki czy wyzwalacze, ale szukam najprostszego rozwiązania na które zazwyczaj wpadamy po długiej walce z problemem.

Zachęcam do dyskusji !
qqrq
Robisz tabelkę haszującą:

user_mess
=======
user_id
message_id
status

I wstawiasz status, czyli jak się dany użytkownik ma do danej wiadomości.

Co do 2. problemu - zamiast usuwać wiadomości zmieniaj ich status. Wtedy dla jednych będą "usunięte", a dla innych nie. Problem tylko, że zaśmiecisz bazę.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.