Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

2 Stron V   1 2 >  
Reply to this topicStart new topic
> [założenia projektu] chat - relacja z bazą danych dotycząca nowych danych, czyli odświeżać chata tylko wtedy - kiedy trzeba :)
Athlan
post 9.08.2006, 09:03:06
Post #1





Grupa: Developerzy
Postów: 823
Pomógł: 12
Dołączył: 18.12.2005

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


Ostatnio odbiła mi pała i postanowiłem napisać sobie chata. Przyjmuję że każdy będzie wiedział o co mi chodzi.

Głównym moim problemem jest odświeżanie okna dialogowego. Głupi pomysł, ale nie umiałem wymyśleć lepszego: okno odświeża się co 1 sec tongue.gif, analogicznie działa lista osob na chacie.

I teraz kieruje pytanie do Was koledzy smile.gif

Jak zrobić (teoria, może przyklady jakieś, zarzucicie jakimś kodem smile.gif ), aby okno dialogowe jak i lista osób online osświeżała się tylko wtedy, gdy dojdą nowe dane ? jak to sprawdzić nie przeciążając bazy danych?

oczywiście: jak najmniej JavaScriptu smile.gif

Pozdrawiam, Athlan smile.gif

Ten post edytował Athlan 9.08.2006, 09:04:46


--------------------
Portfolio: Vgroup.pl | athlan.pl | Test.php.pl - sprawdź się z wiedzy o PHP i ułóż własne pytania!
Pomogłem? Kliknij pod postem.
Go to the top of the page
+Quote Post
artur81
post 9.08.2006, 09:09:17
Post #2





Grupa: Zarejestrowani
Postów: 252
Pomógł: 2
Dołączył: 4.12.2004
Skąd: Skierniewice

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


nie wiem czy dobrym rozwiązanie jest odświeżanie strony co sekunde, zrobisz jakąś szatę graficzną,
przykładowo niech plik razem ze zdjęciam waży 5 kb, jak szybko skończy ci się limit transferu na serwerze? Chyba że piszesz dla siebie na locala, poza tym możesz sprobować z Ajaxem i do diva na stronie wstawiać ostatni dodany wiersz a reszta automatycznie do góry.


--------------------
Go to the top of the page
+Quote Post
Turgon
post 9.08.2006, 09:12:32
Post #3





Grupa: Zarejestrowani
Postów: 800
Pomógł: 0
Dołączył: 26.11.2005
Skąd: Nowy Sącz

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


Ajax Ci zdecydowanie polecam, podobno świetnie sie sprawdza. Przeczytaj na blogu hwao notkę o czacie winksmiley.jpg . Tam jest all smile.gif .


--------------------
Jah Music Is On My Mind !
Go to the top of the page
+Quote Post
Athlan
post 9.08.2006, 09:14:28
Post #4





Grupa: Developerzy
Postów: 823
Pomógł: 12
Dołączył: 18.12.2005

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


No dobra... fajnym pomysłem jest dodanie div'a smile.gif i dodawanie tam informacji (przyjmę to, dzięki smile.gif ), ale co z operacjami na bazie danych? chyba nie ebde sprawdzał co sekundę czy mam coś dodać do div'a, skoro właśnie to jest największym obciążeniem bazy danych smile.gif

pozdrawiam smile.gif


--------------------
Portfolio: Vgroup.pl | athlan.pl | Test.php.pl - sprawdź się z wiedzy o PHP i ułóż własne pytania!
Pomogłem? Kliknij pod postem.
Go to the top of the page
+Quote Post
NetJaro
post 9.08.2006, 09:18:26
Post #5





Grupa: Zarejestrowani
Postów: 475
Pomógł: 0
Dołączył: 1.04.2005
Skąd: Warszawa

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


Już kiedyś to napisał - do chatu najlepszy rozwiązaniem jest AJAX. Pisałem mały chat dla zabawy w AJAX'ie (dla zabawy z AJAX'em) - wyszedł lepiej niz myślałem smile.gif Tylko i wyłącznie AJAX. Możesz też zobaczyć jak działa chat na Home.pl.
Go to the top of the page
+Quote Post
Athlan
post 9.08.2006, 10:06:03
Post #6





Grupa: Developerzy
Postów: 823
Pomógł: 12
Dołączył: 18.12.2005

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


no dobra... zaczne się uczyć AJAX'a ale jak to ma dokładnie działać? co sekundę wysyla zapytanie do bazy czy są nowe wiadomości? no bez przesady tongue.gif

jakieś pomysły o sprawdzanie nowych wiadomości ?


--------------------
Portfolio: Vgroup.pl | athlan.pl | Test.php.pl - sprawdź się z wiedzy o PHP i ułóż własne pytania!
Pomogłem? Kliknij pod postem.
Go to the top of the page
+Quote Post
Turgon
post 9.08.2006, 10:06:43
Post #7





Grupa: Zarejestrowani
Postów: 800
Pomógł: 0
Dołączył: 26.11.2005
Skąd: Nowy Sącz

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


Po kiego grzyba co sekundę smile.gif .



---
Juz raz dostałes ostrzeżenie za nabijanie posów.
Widzę że nadal to robisz.
Jak masz coś do przekaznia konkretnego to pisz, jak nie to się wstrzymaj.
~mike_mech


--------------------
Jah Music Is On My Mind !
Go to the top of the page
+Quote Post
Athlan
post 9.08.2006, 10:34:11
Post #8





Grupa: Developerzy
Postów: 823
Pomógł: 12
Dołączył: 18.12.2005

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


@Turgon wyczerpująca wypowiedź... to jak też wyczerpująco: bo tak tongue.gif

a ta na serio: no trzeba być na aktualce... ten chat bedzie przeznacvzony do konferencji ale narazie jest raczej... shoutbox'em smile.gif

ponawiam pytanie:
zaczne się uczyć AJAX'a ale jak to ma dokładnie działać? smile.gif

pozdrawiam serdecznie smile.gif


--------------------
Portfolio: Vgroup.pl | athlan.pl | Test.php.pl - sprawdź się z wiedzy o PHP i ułóż własne pytania!
Pomogłem? Kliknij pod postem.
Go to the top of the page
+Quote Post
kossa
post 9.08.2006, 10:53:35
Post #9





Grupa: Zarejestrowani
Postów: 1 165
Pomógł: 9
Dołączył: 9.04.2002
Skąd: Toruń

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


Cytat(NetJaro @ 9.08.2006, 10:18 ) *
Już kiedyś to napisał - do chatu najlepszy rozwiązaniem jest AJAX. Pisałem mały chat dla zabawy w AJAX'ie (dla zabawy z AJAX'em) - wyszedł lepiej niz myślałem smile.gif Tylko i wyłącznie AJAX. Możesz też zobaczyć jak działa chat na Home.pl.



@NetJaro na home.pl rozmowa z konsultantem odświeża całą stronę, czy to ten Twój czat? czy nie to co trzeba oglądam? chciałbym zobaczyc jak to działa.

Łukasz


--------------------
Go to the top of the page
+Quote Post
Athlan
post 9.08.2006, 10:57:56
Post #10





Grupa: Developerzy
Postów: 823
Pomógł: 12
Dołączył: 18.12.2005

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


@kossa no coś Ty, takie badziewie, mam lepsze i sie samo odświeża nawet tongue.gif Hmmm, a da sie jakos bez AJAX'a pobrać, czy nadeszły jakieś nowe wiadomości, np od ostatniego odświeżenie i potem dopiero wywołać zapytanie?

czy to nie obciązy bazy jak wykonam np zapytanie: czy jest jakaś nowa message od ostatniego refreshu i tak co 1 sec?

(krótkie zapytanie ale jednak obciąża)

pozdrawiam smile.gif


--------------------
Portfolio: Vgroup.pl | athlan.pl | Test.php.pl - sprawdź się z wiedzy o PHP i ułóż własne pytania!
Pomogłem? Kliknij pod postem.
Go to the top of the page
+Quote Post
Apo
post 9.08.2006, 11:10:12
Post #11





Grupa: Zarejestrowani
Postów: 426
Pomógł: 1
Dołączył: 2.10.2005

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


Boże weź poczytaj na jakiej zasadzie działa Ajax i reszte juz będziesz wiedział. Btw jest juz kilka takich topiców.

Cytat
czy to nie obciązy bazy jak wykonam np zapytanie: czy jest jakaś nowa message od ostatniego refreshu i tak co 1 sec?

po co ?

Ten post edytował Apo 9.08.2006, 11:11:17
Go to the top of the page
+Quote Post
Athlan
post 9.08.2006, 11:13:18
Post #12





Grupa: Developerzy
Postów: 823
Pomógł: 12
Dołączył: 18.12.2005

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


Cytat
Boże weź poczytaj na jakiej zasadzie działa Ajax

Wiesz... zawsze jak zakładam topick czytam najpierw dokumentację smile.gif

pomyślałem o takie rozwiązaniu: Ajax sprawdza zapytaniem czy nie ma nowszych informacji niż ostatnia data zawarta w sesji, jezeli są... dodawane są indormacje do DIV'a, jeżeli nie ma, ustawaimy datę sesji na aktualną

powinno być dobre smile.gif można zamknąć smile.gif

pozdrawiam smile.gif

--EDIT--

@Apo - a jak chcesz sprawdzić czy są nowe messagesy? samo nie przydzie smile.gif

Ten post edytował Athlan 9.08.2006, 11:14:12


--------------------
Portfolio: Vgroup.pl | athlan.pl | Test.php.pl - sprawdź się z wiedzy o PHP i ułóż własne pytania!
Pomogłem? Kliknij pod postem.
Go to the top of the page
+Quote Post
Apo
post 9.08.2006, 11:16:20
Post #13





Grupa: Zarejestrowani
Postów: 426
Pomógł: 1
Dołączył: 2.10.2005

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


lol. A słyszałem że jesteś najlepszy, masta i wogle ...

Przy dodawaniu nowego wpisu ajax wysyła tresc do php, nastepnie php zapisuje dane w bazie i odczytuje wpisy, które następnie przesyła spowrotem do ajax'a a ten je wyświetla w divie...

Ten post edytował Apo 9.08.2006, 11:16:46
Go to the top of the page
+Quote Post
Athlan
post 9.08.2006, 11:19:01
Post #14





Grupa: Developerzy
Postów: 823
Pomógł: 12
Dołączył: 18.12.2005

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


Cytat
Przy dodawaniu nowego wpisu ajax wysyła tresc do php, nastepnie php zapisuje dane w bazie i odczytuje wpisy, które następnie przesyła spowrotem do ajax'a a ten je wyświetla w divie...


no a jak ktoś nic nie pisze? to jak dostanie nowe wiadomości napisane przez innych?

Cytat
lol. A słyszałem że jesteś najlepszy, masta i wogle ...

dzieki guitar.gif

pozdro smile.gif


--------------------
Portfolio: Vgroup.pl | athlan.pl | Test.php.pl - sprawdź się z wiedzy o PHP i ułóż własne pytania!
Pomogłem? Kliknij pod postem.
Go to the top of the page
+Quote Post
mike
post 9.08.2006, 11:39:04
Post #15





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

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


Cytat(Apo @ 9.08.2006, 12:16 ) *
nastepnie php zapisuje dane w bazie i odczytuje wpisy, które następnie przesyła spowrotem do ajax'a a ten je wyświetla w divie...

Po pierwsze to co jak jak ja nic nie napiszę, to co będzie?
Po drugie: "następnie przesyła spowrotem do ajax'a" - niewinnie się pisze, ale ciekaw jestm jak to zrobisz? Musiałbyś nasłuchiwać czekając na dpowiedź, albo pytać co jakiś czas czy coś jest. Na przykład co sekundę.

Inaczej nie da rady tylko pytać co 1sek.
Go to the top of the page
+Quote Post
Coyote
post 9.08.2006, 11:43:04
Post #16





Grupa: Zarejestrowani
Postów: 151
Pomógł: 0
Dołączył: 20.02.2005
Skąd: Poznań

Ostrzeżenie: (30%)
XX---


chyba ze w momencie dodania przez usera wiadomosci or smth wysylac zapytanie przez ajaxa ....


--------------------
Go to the top of the page
+Quote Post
Apo
post 9.08.2006, 11:48:48
Post #17





Grupa: Zarejestrowani
Postów: 426
Pomógł: 1
Dołączył: 2.10.2005

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


Cytat(mike_mech @ 9.08.2006, 10:39 ) *
Po pierwsze to co jak jak ja nic nie napiszę, to co będzie?
Po drugie: "następnie przesyła spowrotem do ajax'a" - niewinnie się pisze, ale ciekaw jestm jak to zrobisz? Musiałbyś nasłuchiwać czekając na dpowiedź, albo pytać co jakiś czas czy coś jest. Na przykład co sekundę.


1. Jak nic nie napiszesz to nic sie nie zrobi smile.gif
2. Dawno nie używałem Ajaxa ale opisze to jak ja to widze:
User wysyła treść wpisu -> Ajax przekazuje ją do php -> php zapisuje treść w bazie -> php odczytuje treści i wyświetla je -> Ajax przekazuje treść jako Response.Text (chyba tak to sie nazywało) smile.gif
Go to the top of the page
+Quote Post
Athlan
post 9.08.2006, 11:55:44
Post #18





Grupa: Developerzy
Postów: 823
Pomógł: 12
Dołączył: 18.12.2005

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


Cytat
1. Jak nic nie napiszesz to nic sie nie zrobi

no a ma sie automatic zrobić tongue.gif czyli refresh, myślałem o 1 sekundzie, ale przecież broń dalekiego zasięgu na naszą bazę danych sad.gif

user jeżeli coś napisze to mu sie odświeży a jak nic nie napisze to musi mu się odświeżyć samo... chyba logiczne tongue.gif


--------------------
Portfolio: Vgroup.pl | athlan.pl | Test.php.pl - sprawdź się z wiedzy o PHP i ułóż własne pytania!
Pomogłem? Kliknij pod postem.
Go to the top of the page
+Quote Post
mike
post 9.08.2006, 12:01:23
Post #19





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

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


~Athlan ja wiem jak to zrobić.
Pytałem retorycznie ~Apo, który napisał "które następnie przesyła spowrotem do ajax'a a ten je wyświetla w divie"

O mija logike to Ty się nie martw tongue.gif
Go to the top of the page
+Quote Post
bim2
post 9.08.2006, 15:20:47
Post #20





Grupa: Zarejestrowani
Postów: 1 873
Pomógł: 152
Dołączył: 9.04.2006
Skąd: Berlin

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


Poprostu np. co 5 sec pobieraj ajaxem jaka zawartość ma się wstawić do diva tongue.gif (zopbacz na mojej stornie shouta (sam ajax) http://nfscg.info/x-trim3/) Wysyłasz zapytanie do pliku php, gdzie pobiera on z bazy danych wszystkie odpowiedzi (lub np. 5) i wstrzykujesz je do diva smile.gif Proste, tylko nie wiem jak na to wychodzi obciążenie z bazą. Spytam sie testujac około 10 userów tongue.gif i powiem co z bazą danych biggrin.gif


--------------------
Go to the top of the page
+Quote Post

2 Stron V   1 2 >
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: 14.08.2025 - 06:38