![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 561 Pomógł: 3 Dołączył: 2.02.2009 Ostrzeżenie: (0%) ![]() ![]() |
chodzi o to ze mam tableke
id zmienne 1 1,2,3,4,5 2 2,4,6,8 3 3,6,9 i powiedzmy chce pobrać rekrody dla zmiennej 6, czyli będą to te o id 2 i 3. i wlasnie nie wiem jak to rozbić
czy ja dobrze kombinuje? |
|
|
![]() |
![]()
Post
#2
|
|
Newsman Grupa: Moderatorzy Postów: 4 005 Pomógł: 548 Dołączył: 7.04.2008 Skąd: Trzebinia/Kraków ![]() |
możesz też za pomocą regexp'ow http://dev.mysql.com/doc/refman/5.1/en/regexp.html. ale musisz wiać uwagę że zmienna może mieć postać 66 wiec musisz to jakoś ograniczyć (przecinki).
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 71 Pomógł: 5 Dołączył: 26.01.2011 Ostrzeżenie: (40%) ![]() ![]() |
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 561 Pomógł: 3 Dołączył: 2.02.2009 Ostrzeżenie: (0%) ![]() ![]() |
dlatego ze nie chcę aby powtarzaly mi się rekordy w bazie to ma być system powiadomień...
dokladnie to ID | POWIADOMIENIE | KOGO POWIADAMIAC |
|
|
![]()
Post
#5
|
|
Newsman Grupa: Moderatorzy Postów: 4 005 Pomógł: 548 Dołączył: 7.04.2008 Skąd: Trzebinia/Kraków ![]() |
może powiedz dokładnie co chcesz zrobić, bo to nie zmienia faktu, że masz słabo baze zaprojektowaną.
|
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 71 Pomógł: 5 Dołączył: 26.01.2011 Ostrzeżenie: (40%) ![]() ![]() |
|
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 561 Pomógł: 3 Dołączył: 2.02.2009 Ostrzeżenie: (0%) ![]() ![]() |
powiadomienia np o tym ze ktos dodal zdjęcie.
id powiadomienie kogopowiadamiac 1. sprawdzam id znajomych uzytkownika a) zbieram wszystkich znajomych i ukladam ich ID po przecinku (IMG:style_emoticons/default/cool.gif) $powiadamiaj = 1,2,3,4,5 2. $powiadomienie = twoj znajomy xxx dodal zdjecie. 3. zapisuje do bazy powiadomienie
|
|
|
![]()
Post
#8
|
|
Newsman Grupa: Moderatorzy Postów: 4 005 Pomógł: 548 Dołączył: 7.04.2008 Skąd: Trzebinia/Kraków ![]() |
no to przyda Ci sie tabela symulująca log zdarzeń. wpisujesz do niej akcje jakie zachodzą. czyli ID = 1 powiadomo ID = 2, 3 , 5.
ID | POWIADOM 1 | 2 1 | 3 1 | 5 można zrobić dodatkową kolumnę w której będzie informacja czy takowe powiadomienie zostało odebrane ale to już inna sprawa. |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 561 Pomógł: 3 Dołączył: 2.02.2009 Ostrzeżenie: (0%) ![]() ![]() |
to nie lepiej to wrzucić tak jak ja to zrobiłem tylko zrobić nową tabelę? nie pytam bo się wymądrzam tylko dlatego, że chciałbym, aby to było jak najbardziej optymalne, a napewno Ty znasz się na tym lepiej ode mnie.
|
|
|
![]()
Post
#10
|
|
Newsman Grupa: Moderatorzy Postów: 4 005 Pomógł: 548 Dołączył: 7.04.2008 Skąd: Trzebinia/Kraków ![]() |
jak odpowiednio nadasz indeksy na kolumny to będzie to dużo bardziej wydajne niż szukanie tego za pomocą LIKE.
|
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 561 Pomógł: 3 Dołączył: 2.02.2009 Ostrzeżenie: (0%) ![]() ![]() |
aha, to wlasnie chcialem uslyszec, dzieki:)
|
|
|
![]()
Post
#12
|
|
Grupa: Zarejestrowani Postów: 279 Pomógł: 56 Dołączył: 3.06.2010 Skąd: Tarnowskie Góry Ostrzeżenie: (0%) ![]() ![]() |
Cytat to nie lepiej to wrzucić tak jak ja to zrobiłem tylko zrobić nową tabelę? nie pytam bo się wymądrzam tylko dlatego, że chciałbym, aby to było jak najbardziej optymalne, a napewno Ty znasz się na tym lepiej ode mnie. Z punktu widzenia łatwości obsługi Twoje rozwiązanie jest bardzo nieoptymalne, bo trudno dodać i pobrać listę powiadamianych (powód założenia tematu). Rozwiązanie z dodatkową tabelą jest znacznie lepsze i daje możliwość rozbudowy o dodatkowe opcje, a zapis do stringa pozbawia cię możliwości rozbudowy aplikacji, bez zmiany struktury bazy danych. Ten post edytował vermis 25.03.2011, 15:33:58 |
|
|
![]()
Post
#13
|
|
Grupa: Zarejestrowani Postów: 561 Pomógł: 3 Dołączył: 2.02.2009 Ostrzeżenie: (0%) ![]() ![]() |
no dobra a jeszcze jedno pytanie,
czy lepiej jest zrobic tabele id, powiadomienie 1 uzytkownik dodal zdjecie i potem wyciagnac z tabeli powiadamianych id i :
czy lepiej w tabeli zpisać w INT typ powiadomienia id , typ 1 1
czy moze jeszcze 3 tablicę gdzie będę trzymał w stringach opisy do typów powiadomień? |
|
|
![]()
Post
#14
|
|
Grupa: Zarejestrowani Postów: 279 Pomógł: 56 Dołączył: 3.06.2010 Skąd: Tarnowskie Góry Ostrzeżenie: (0%) ![]() ![]() |
Ja rozbudowałbym na tabelę o zdarzenia, dla których wysyłać powiadomienia (true|false) czyli np.
id_uzytkownika|id_powiadamianego|zdjecie|komentarz|nowy wpis itp 1|2|true|false|true Ale może okazać się że dodatkowa tabla da więcej możliwości, tutaj pytanie jak bardzo chcesz to rozbudować? |
|
|
![]()
Post
#15
|
|
Newsman Grupa: Moderatorzy Postów: 4 005 Pomógł: 548 Dołączył: 7.04.2008 Skąd: Trzebinia/Kraków ![]() |
ja bym rozwiązał to tak:
t_powiadomienia id_powiadomienia | opis 1 | opis1 2 | opis2 t_user_powiadomienie id_user_od | id_user_do | id_powiadomienia 1 | 3 | 2 zakładamy FK na t_user_powiadomienie(id_powiadomienia) => t_powiadomienia i teraz mamy że user 1 powiadamia usera 3 o opis2. |
|
|
![]()
Post
#16
|
|
Grupa: Zarejestrowani Postów: 561 Pomógł: 3 Dołączył: 2.02.2009 Ostrzeżenie: (0%) ![]() ![]() |
no właśnie sęk w tym że bardzo będzie około 20 różnych typów powiadomień
|
|
|
![]()
Post
#17
|
|
Newsman Grupa: Moderatorzy Postów: 4 005 Pomógł: 548 Dołączył: 7.04.2008 Skąd: Trzebinia/Kraków ![]() |
dlatego ja zaproponowałem tabele słownikową t_powiadomienie, w niej załadujesz sobie 20 powiadomień i za pomocą ID będziesz sie odwoływał. taka konstrukcje będziesz mógł wykorzystać nie tylko w tym module, ale np innych miejscach w których będziesz musiał używać powiadomień, to zapewni Twojemu systemowi spójność.
|
|
|
![]()
Post
#18
|
|
Grupa: Zarejestrowani Postów: 561 Pomógł: 3 Dołączył: 2.02.2009 Ostrzeżenie: (0%) ![]() ![]() |
zakładamy FK tzn? No tak tylko jest jeszcze jeden problem że te powiadomienia nie będą stałe dlatego że na przykład, ktoś tam dodał komentarz. uzytkownik $zmienny dodał komentarz: $komentarz do zdjęcia użytkownika $zmienny2 Ten post edytował neo1986kk 25.03.2011, 16:05:55 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 24.08.2025 - 23:38 |