![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 40 Pomógł: 6 Dołączył: 20.12.2011 Ostrzeżenie: (0%) ![]() ![]() |
Witam
Chciałem się zapytać czy ktoś ma sensowny pomysł na rozplanowanie poczty wewnątrz serwisu - czyt. wiadomości wysyłanych do siebie między użytkownikami strony. Otóż cały problem polega na tym, że użytkownicy będą mogli kasować wiadomości, zarówno wysłane jak i odebrane - i w tym miejscu pojawia się moje pytanie. Ponieważ, jeśli użytkownik wysyłający skasuje wiadomość z poziomu swojej skrzynki - to skasuje ją również adresatowi, i dokładnie taka sama sytuacja gdy zamienimy ich rolami. Bardzo chciałbym uniknąć robienia dwóch kopii każdej wiadomości (jednej dla nadawcy, drugiej dla adresata). Czy miałoby sens trzymać w bazie wiadomość dopóki nie skasują jej obaj użytkownicy? Mam na myśli, żeby zrobić komórki usunieto_nadawca oraz usunieto_adresat. Jeśli nadawca usunie wiadomość to już nie wyświetlimy jej w jego skrzynce, ale całkowicie skasujemy dopiero gdy tak samo usunie adresat. Czy takie rozwiązanie ma sens? Może macie inne lepsze propozycje? |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 370 Pomógł: 43 Dołączył: 1.12.2007 Skąd: Kędzierzyn Koźle Ostrzeżenie: (0%) ![]() ![]() |
ale tak to chyba zazwyczaj działa, no bo po co było by ograniczone miejsce w skrzynkach "pocztowych" na stronach?
![]() -------------------- pretty as a shit.
|
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 121 Pomógł: 22 Dołączył: 22.06.2012 Ostrzeżenie: (0%) ![]() ![]() |
Bardzo chciałbym uniknąć robienia dwóch kopii każdej wiadomości (jednej dla nadawcy, drugiej dla adresata). Czy miałoby sens trzymać w bazie wiadomość dopóki nie skasują jej obaj użytkownicy? Mam na myśli, żeby zrobić komórki usunieto_nadawca oraz usunieto_adresat. Jeśli nadawca usunie wiadomość to już nie wyświetlimy jej w jego skrzynce, ale całkowicie skasujemy dopiero gdy tak samo usunie adresat. Czy takie rozwiązanie ma sens? Może macie inne lepsze propozycje? U siebie kozystam z podobnego rozwiązania. Tylko przy czymś takim trzeba zrobić w ten deseń: Usuwa nadawca: Skrypt sprawdza czy adresat też usunął, jeżeli tak to usuwa wiadomość, jeżeli nie to usunieto_nadawca = 1; Usuwa adresat: Skrypt sprawdza czy nadawca też usunął, jeżeli tak to usuwa wiadomość, jeżeli nie to usunieto_adresat = 1; Inna opcja to po prostu dodatkowe pola w bazie dla kazdej wiadomości: widoczność dla adresata i widoczność dla nadawcy. Też jakieś wyjście, ale po co miejsce marnować? Ten post edytował Shido 29.06.2012, 08:11:00 -------------------- Sorka za błędy ort. jak coś dajcie znać na PW to popoprawiam.
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 340 Pomógł: 49 Dołączył: 3.07.2009 Skąd: Rzeszów Ostrzeżenie: (0%) ![]() ![]() |
Dobrym rozwiązaniem może być mechanizm, który zamiast kasować wiadomość przenosi ją do innej bazy danych. Wtedy masz bazę danych "wiadomości usunięte" o niskim priorytecie bezpieczeństwa, którą można okresowo zgrywać na płytkę i truncate.... oraz drugą bazę korespondencji aktywnej o wysokim priorytecie bezpieczeństwa (czyli backupu) . Jednocześnie rozmiar zostaje pod kontrolą
|
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 31.07.2025 - 10:29 |