Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [MySQL][PHP]Forum, Przeczytany post, nie przeczytany
Johnas
post 6.06.2011, 11:09:15
Post #1





Grupa: Zarejestrowani
Postów: 650
Pomógł: 16
Dołączył: 5.07.2010
Skąd: Ściśle Tajne

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


Witam! Tworzę mały skrypt forum na własne potrzeby. Zastanawia mnie jedna rzecz. Jak sprawdzić czy dany użytkownik przeczytał post? Chodzi mi o zmiane ikon smile.gif


--------------------
Jak coś jest dobre, to nie znaczy że nie może być to lepsze - Ideały nie istnieją ;D
Strony internetowe Świnoujście
Go to the top of the page
+Quote Post
aeaeae
post 6.06.2011, 12:41:23
Post #2





Grupa: Zarejestrowani
Postów: 117
Pomógł: 23
Dołączył: 5.03.2011

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


Przypisujesz albo użytkownikom numery postów, które przeczytali, albo postom numery użytkowników (do bazy danych), albo jeszcze i jedno i drugie. Wszystko zależy od sytuacji, chociaż z tego, co piszesz, to raczej pierwsza możliwość.
Go to the top of the page
+Quote Post
mat-bi
post 6.06.2011, 12:45:22
Post #3





Grupa: Zarejestrowani
Postów: 690
Pomógł: 92
Dołączył: 6.02.2011

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


Pierwsza, po prostu musisz mieć drugą kolumnę, inaczej bedzie trzeba silić się z explode, co nie jest ani miłe ani wydajene
Go to the top of the page
+Quote Post
Hpsi
post 6.06.2011, 12:47:00
Post #4





Grupa: Zarejestrowani
Postów: 483
Pomógł: 50
Dołączył: 15.03.2005
Skąd: Poznań

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


Ja w sumie bym zrobił tak jak poprzednik proponuje:
Jeśli użytkownik, wszedł w forum - dodaje jego id do jakies tabelki o wygladzie uid | topic_id
w tym momencie w spisie tematów, sprawdzam czy istniaje wpis w bazie , jesli nie - znaczy nie czytal , jesli tak - znaczy przeczytal.
W czasie dodawania postu bym kasowal najpierw wszystkie rekordy w tej tabeli gdzie topic_id jest identyczny z tematem, i po sprawie .

Natomiast nie wiem czy to jest optymalne rozwiazanie, gdyż nigdy nie pisalem w sumie forum z prawdziwego zdarzania wink.gif


--------------------
Daiquiri: T1 = (dx/dt * s)^hpsi
Daiquiri: gdzie T1 - Twój czas przybycia na miejsce, dx/dt - prędkość, s droga
Daiquiri: brb trzeba by to poprawić T1 - Czas jaki Ci to zajmie
Daiquiri: Zatem T - czas dotarcia p T1 + T2 gdzie T2 = aktualny czas

===
po prostu kocham ją :D haha
Go to the top of the page
+Quote Post
gothye
post 6.06.2011, 12:49:18
Post #5





Grupa: Zarejestrowani
Postów: 702
Pomógł: 65
Dołączył: 16.03.2009

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


http://forum.php.pl/index.php?showtopic=176786&hl=


--------------------
Nie udzielam pomocy poprzez PW
Go to the top of the page
+Quote Post
dboss
post 6.06.2011, 13:01:32
Post #6





Grupa: Zarejestrowani
Postów: 12
Pomógł: 2
Dołączył: 5.05.2008

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


Hpsi+ -> W metodzie, którą proponujesz wszystkie posty w danym temacie będą pokazywane jako nowe / stare.

Moim zdaniem tabelka powinna wyglądać tak: id, user_id, topic_id, last_visited

Last_visited zawierałoby czas kiedy ostatnio użytkownik odpalał dany temat (pole byłoby aktualizowane po każdym wejściu do tematu). Na podstawie prostego porównania - kiedy został napisany ostatni post i kiedy widzieliśmy dany temat - można określić, czy post został przeczytany. Nie wiem jak takie rozwiązanie wyglądałoby od strony wydajności. Można byłoby pokombinować i dane z tabelki ładować do cookies. Jeżeli dane te znajdowały by się już w ciasteczkach baza danych zostałaby odciążona z połowy roboty.
Go to the top of the page
+Quote Post
Hpsi
post 6.06.2011, 13:14:27
Post #7





Grupa: Zarejestrowani
Postów: 483
Pomógł: 50
Dołączył: 15.03.2005
Skąd: Poznań

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


Cytat
Moim zdaniem tabelka powinna wyglądać tak: id, user_id, topic_id, last_visited

hmm muszę się w 100% z Tobą zgodzić wink.gif


--------------------
Daiquiri: T1 = (dx/dt * s)^hpsi
Daiquiri: gdzie T1 - Twój czas przybycia na miejsce, dx/dt - prędkość, s droga
Daiquiri: brb trzeba by to poprawić T1 - Czas jaki Ci to zajmie
Daiquiri: Zatem T - czas dotarcia p T1 + T2 gdzie T2 = aktualny czas

===
po prostu kocham ją :D haha
Go to the top of the page
+Quote Post
gothye
post 6.06.2011, 18:23:49
Post #8





Grupa: Zarejestrowani
Postów: 702
Pomógł: 65
Dołączył: 16.03.2009

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


Cytat(Hpsi+ @ 6.06.2011, 14:14:27 ) *
hmm muszę się w 100% z Tobą zgodzić ;)


id, user_id, topic_id, last_visited

id w tym przypadku nie jest potrzebne ,lepiej założyć klucz PIRAMRY na kolumny user_id i topic_id


--------------------
Nie udzielam pomocy poprzez PW
Go to the top of the page
+Quote Post
Johnas
post 6.06.2011, 21:38:07
Post #9





Grupa: Zarejestrowani
Postów: 650
Pomógł: 16
Dołączył: 5.07.2010
Skąd: Ściśle Tajne

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


dzięki za info. Pokombinuje smile.gif


--------------------
Jak coś jest dobre, to nie znaczy że nie może być to lepsze - Ideały nie istnieją ;D
Strony internetowe Świnoujście
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: 12.06.2025 - 14:39