Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> prywatne wiadomości, how do ?
peter13135
post 3.01.2010, 22:21:37
Post #1





Grupa: Zarejestrowani
Postów: 1 447
Pomógł: 191
Dołączył: 26.03.2008

Ostrzeżenie: (0%)
-----


Przymierzam się do stworzenia prywatnych wiadomości, w związku z czym proszę o porady
1. wysyłam wiadomość, ja mam ją w wiadomościach wysłanych, a adresat w odebranych. Ja jako autor wiadomości kasuje wiadomość, a adresat nadal ma tą wiadomość w skrzynce. - Jak to uczynić questionmark.gif tworzyć dwie kopie wiadomości ? a może poprostu zrobić w bazie jedno pole autor_del, drugie adresat_del, (wartosc 1- skasowana, 0- nie skasowana) i co jakiś czas kasowac wszystkie gdzie oba pola mają wartość 1 questionmark.gif
2. jak zrobić limit wiadomości w skrzynce ?


--------------------
:)
Go to the top of the page
+Quote Post
webdice
post 3.01.2010, 22:27:07
Post #2


Developer


Grupa: Moderatorzy
Postów: 3 045
Pomógł: 290
Dołączył: 20.01.2007




Zrób sobie statusy wiadomości, przykładowo status:

Kod
0 - nie usunięta
1 - usunięta przez nadawce
2 - usunięta przez adresata


Jeśli któryś z użytkowników usuwa wiadomość, to sprawdzasz czy status jest różny od zera, jeśli tak to usuwasz wiadomość z tabeli.
Go to the top of the page
+Quote Post
cojack
post 3.01.2010, 22:33:25
Post #3





Grupa: Zarejestrowani
Postów: 898
Pomógł: 80
Dołączył: 31.05.2008

Ostrzeżenie: (20%)
X----


Potrzebujesz mniej więcej czegoś takiego:
  1. CREATE TABLE "messages" {
  2. "idMessage" serial NOT NULL,
  3. "idUser" int REFERENCES "userTable"("idUser"), // odbiorca
  4. "subject" varchar(255) NOT NULL,
  5. "content" text,
  6. "readed" BOOLEAN DEFAULT false,
  7. "inTrash" BOOLEAN DEFAULT false,
  8. "dateRead" int
  9. }
  10.  
  11. CREATE TABLE "messages_send" {
  12. "idMessage" int REFERENCES "messages"("idMessage"),
  13. "idUser" int REFERENCES "userTable"("idUser"), // nadawca
  14. "dateSend" int,
  15. PRIMARY KEY( "idMessage", "idUser")
  16. }


Relacja typu jeden do wielu.

Można też zrobić np coś ala odpowiedź na wiadomość, wtedy należało by dodać kolejną tabelę "messages_replay" która by nawiązywała do "messages_send" ;]

Ten post edytował cojack 3.01.2010, 22:38:35


--------------------
cojack blog - mój blog (na jakiś czas off).
"jak czegoś nie wiem, to nie myślę że wiem" - moja domena
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 6.07.2025 - 12:30