Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 229 Pomógł: 34 Dołączył: 7.12.2008 Skąd: Poznań Ostrzeżenie: (0%)
|
Witam,
mam problem natury algorytmicznej. Piszę aktualnie skrypt, w którym użytkownicy się zapisać do poszczególnych kanałów, a w tych z kolei pojawiają się co jakiś czas systemowe wiadomości. Wiadomości wyświetlają się w sidebarze, ale przy dopisaniu się do kanału można wybrać również opcję wysyłania wiadomości mailem. Dostępne są możliwości wysyłki natychmiastowej, raportu raz w tygodniu, albo brak e-maili. Nie ma problemu z wysyłką natychmiastową i brakiem e-maili. Zaciąłem się jednak przy wysyłce maili raz na tydzień. Jak wiadomo różni użytkownicy mogą się zapisać do różnych kanałów, a więc każdy dostanie inne wiadomości w swoim mailu. Moje pytanie więc, jak pobrać te dane z bazy? Schemat jest następujący: user: - id channel - id - name message: - id - title - content - channel_id channel_user: - id - channel_id - user_id Można oczywiście pobrać najpierw użytkowników, a później dla każdego usera w pętli for pobrać odpowiednie wiadomości. Nie chciałbym jednak robić tego w ten sposób. Macie może jakieś inne pomysły? Pozdrawiam Marcin |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 726 Pomógł: 20 Dołączył: 8.12.2005 Skąd: Wrocław Ostrzeżenie: (0%)
|
o fakt że w order by odwrotnie wpisałem, mniejsza o to. Jakoś nie widzę idei twojego jednego maila, rozpisz jak to thek widzisz (IMG:style_emoticons/default/smile.gif)
Gdzie ty masz kontrolę kategori po stronie php? Jedyne co kontrolujesz to usera, całą resztę po prostu przekazujesz do zmiennej. Tak samo przy wyświetleniu tego, jeżeli byś chciał przekazać to do html (a w tym formacie idzie najczęściej mail), wyświetlasz już tylko poukładane już dane, nie widzę co miało by być nadmiarowego. Bo cały czas nie rozumiem ideai budowania najpierw tablic, dla tak prostego zastosowania jak wysłanie maila. Bo owszem może i miało by to sens, jak by na tej podstawie budować dalszą nawigację dla użytkownika przekazując już tak zbudowaną tablicę ... - wyjaśnij proszę thek Jak byś mi rozpisał w jaki sposób iloczyn kartezjański miał by się budować przy łączeniu tabel w where? pomijając już indeksację dla pól? Przecież bazy są właśnie do tego łącznia przygotowane.... i o ile wiem nie tworzy się w ten sposób właśnie zbioru z którego wybierane są wartości, a wskazywane powiązania są 1 do 1. Ten post edytował Wykrywacz 23.04.2010, 10:25:30 |
|
|
|
zelu [PHP] Cotygodniowa wysyłka ofert 23.04.2010, 07:11:10
thek Ale przecież jakoś musisz połączyć te wszystkie in... 23.04.2010, 08:18:52
zelu No właśnie chodziło mi o to jak połączyć te dane ... 23.04.2010, 08:34:36
Wykrywacz Nie czaje generalnie w czym jest w tym problemie d... 23.04.2010, 09:16:01
thek Tak... Struktura rekordów otrzymanych z bazy jest ... 23.04.2010, 09:16:46
zelu W channels_users wszystko jest ok User dopisuje s... 23.04.2010, 09:20:16
Wykrywacz Wydaje mi się że za bardzo to Thek utrudniasz, to ... 23.04.2010, 09:25:51
zelu Wielkie dzięki Thek Wiele mi się rozjaśniło
Edi... 23.04.2010, 09:26:41
Wykrywacz Thek ale o jakim iloczynie kartezjańskim ty mówisz... 23.04.2010, 09:30:16
zelu Generalnie Twoje rozwiązanie Wykrywacz jest łatwie... 23.04.2010, 09:54:07
Wykrywacz Żle zrozumiałeś. Pobierasz wszystko naraz, przez o... 23.04.2010, 10:04:59
zelu Wszystko się zgadza, z pierwotną wersją, która zap... 23.04.2010, 10:08:50
thek Order by najpierw po u.id. Będziesz wysyłał do jed... 23.04.2010, 10:10:46
zelu Ok, zrobiłem następującą rzecz:
1) Pobrałem z baz... 23.04.2010, 11:18:19
thek Nie.. Nie polegniesz z prostej przyczyny. Te pętle... 23.04.2010, 13:38:11
Wykrywacz Dzięki thek 23.04.2010, 16:49:51 ![]() ![]() |
|
Aktualny czas: 28.12.2025 - 09:38 |