Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL] Projektowanie Baz Danych, System Wiadomosci
fernet
post
Post #1





Grupa: Zarejestrowani
Postów: 91
Pomógł: 1
Dołączył: 22.03.2007

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


Chcialbym umiescic na stronie system wymiany wiadomosci pomiedzy uzytkownikami. Przychodzi mi do glowy wiele rozwiazan co do struktury tabel bazy dnaych. Nie posiadam jednak odpowiedniego doswiadczenia zeby zaplanowac optymalna strukture tabel. Do tej pory przeprowadzalem na bazach proste operacje.Czas mi nie pozwala na analizowanie gotowcow zeby wychwycic w nich sposob w jaki te operacaje sa przeprowadzane. Pisze wiec tutaj moze ktos z was mial juz z tym stycznosc i prosil bym o ile to mozliwe o rzeczowe objasnienie co do tego jak gdze i w jaki sposob maja byc przechowywane ow wiadomosci i w jaki sposob powinny byc one kojarzone z uzytkownikami.

Za pomoc i zainteresowanie z gory dzekuje i pozdrawiam...
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 7)
mike
post
Post #2





Grupa: Przyjaciele php.pl
Postów: 7 494
Pomógł: 302
Dołączył: 31.03.2004

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


Tabela messages.
Kod
id | sender_id | receiver_id | ... (inne atrybuty takie jak tytuł,  treść, ...) | isReaded


Nie za bardzo widzę w czym trudność.

Masz pełną dowolność. Możesz dodać flagi czy wiadomość jest w koszu, czy została przekazana, czy została na nia wysłana odpowiedź, ...
Go to the top of the page
+Quote Post
fernet
post
Post #3





Grupa: Zarejestrowani
Postów: 91
Pomógł: 1
Dołączył: 22.03.2007

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


Czyli sugerujesz oddzelna tabele pod wiadomosci? Wlsciwie to byla pierwsza mysl jaka mi rzyszal do glowy ale przy glebszej analizie pojawily sie watpliwoasci pewnie na wyrost ale jednak...

Ten post edytował fernet 30.04.2007, 11:14:58
Go to the top of the page
+Quote Post
mike
post
Post #4





Grupa: Przyjaciele php.pl
Postów: 7 494
Pomógł: 302
Dołączył: 31.03.2004

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


Cytat(fernet @ 30.04.2007, 12:11:20 ) *
Czyli sugerujesz oddzelna tabele pod wiadomosci?
A jest jakaś inna sensowna możliwość?
Oddzielna tabela to jedyne rozwiązanie jakie wchodzi w grę.

Cytat(fernet @ 30.04.2007, 12:11:20 ) *
(...) przy glebszej analizie pojawily sie watpliwoasci (...)
Jakie?
Go to the top of the page
+Quote Post
fernet
post
Post #5





Grupa: Zarejestrowani
Postów: 91
Pomógł: 1
Dołączył: 22.03.2007

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


Indywidualna tablica dla kazdego uzytkownika Autor trzyma wiadomosc no i kwestia delete nie jest jeszcze dla mnie calkim jesna

Wiadomosc musi byc przechowywana do momentu odczytanie i wtedy jakies kosmosy zeby zbadac czy autor lub tez odbiorca nie chce jej przechowywac przy indywidualnych tablicach wiadomosc ktora zechcial by przechowac Obiorac bedze nadal u Nadawcy no sam juz nie wiem no i nie sprawdzalem czasu dostwpu przy jednej mega tabilcy i przy indywidualnych bo jesli to autor ma przechowywac wiadomosc to u odbiorcy powinna sie znalesc jeszcze inna tablica z id nadawcy wiec dwie indywidualne tablice dla kazdego uzytkownika jedna z nadawanymi wiadomosciami a druga z odbiranymi

Ten post edytował fernet 30.04.2007, 11:47:45
Go to the top of the page
+Quote Post
Cienki1980
post
Post #6





Grupa: Przyjaciele php.pl
Postów: 1 590
Pomógł: 40
Dołączył: 11.01.2007
Skąd: Centrum

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


A dlaczego chcesz tworzyć tabelę dla każdego użytkownika (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) Tak jak mike_mech podał ... jedna tabela masz tam id_nadawcy i id_odbiorcy.

Nic więcej do szczęścia nie potrzeba.
Go to the top of the page
+Quote Post
fernet
post
Post #7





Grupa: Zarejestrowani
Postów: 91
Pomógł: 1
Dołączył: 22.03.2007

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


No wiec oka nie bede przepychal dalej tego pomyslu. Bedze jedna tablica nie ma co komplikowac zwlaszcza ze nie mam zadnej pewnosci ze tak bylo by szybciej i obnizyl bym bezpieczenstwo aplikacji bo wchodzlo by w gre create i drop pozdrawiam...

Ten post edytował fernet 30.04.2007, 12:05:12
Go to the top of the page
+Quote Post
Void(Null)
post
Post #8





Grupa: Zarejestrowani
Postów: 14
Pomógł: 0
Dołączył: 12.04.2007
Skąd: Błonie

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


Cytat(mike_mech @ 30.04.2007, 12:18:12 ) *
A jest jakaś inna sensowna możliwość?
Oddzielna tabela to jedyne rozwiązanie jakie wchodzi w grę.

Jakie?


Dobrym sposobem na "elastyczne zarządzanie" użytkownikami w tym przypadku to zrobienie tej struktury na dwóch tabelach. W jednej użytkownicy: ID | Nazwa | (Inne jak np Nazwisko etc) a druga to posty ze wszelkimi polami jakie ci są potrzebne (PostID | FROM | TO | Date | Temat (etc)) - i złączenie obu poprzez klucz obcy w tabeli postów - czy wolisz do kolumny FROM czy TO - to generalnie obojętne - drugą kolumnę możesz zawsze dopiąć kodem.

Pzdr
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 23.08.2025 - 14:48