po 4 dniach walki i porażek postanowiłem zwrócić się do was. Otórz razem z kolegom piszemy aplikacje czatu - dla zabawy.
Aplikacja już jest (C++), natomiast całe okno czatu leży po stronie php/javascript (serwer www).
Skrypt to okno rozmowy, a pod nim okno pisania wiadomosci - wiadomo.
O ile z tym drugim nie było żadnego problemu, to z pierwszym nien daje już rady.
Chodzi o to aby skrypt czytał zawartość pliku chat2.php zawartego w pliku chat.php, w którym to ustawione jest automatyczne przewinięcie tego pola oraz odświeżanie go co X sekund.
Oto wycinek tego skryptu:
///////////// ustawienia autorefresha $autorefresh_data = "od=$od&do=$do"; /// podaj dane do przeslania do drugiego pliku $autorefresh_divname = "digitalbasket"; /// nazwa okienka div, jesli na jednej stronie ma wystapic wiecej niz jeden takich skryptow $autorefresh_filename = "chat2.php"; /// adres i nazwa pliku $autorefresh_time = "1000"; /// czas odswiezania w milisekundach, 1sek = 1000ms echo "$(\"#$autorefresh_divname\").load('$autorefresh_filename?$autorefresh_data&randval='+ Math.random());"; echo "<div id=\"$autorefresh_divname\" style=\"width: 485px; height: 240px; margin-top:-12px; margin-left:-3px; padding: 0px; text-align: left; overflow: auto;\"></div>";
Proszę o wyrozumiałość w stosunku do estetyki kodu oraz tego że został wyświetlony w php/echo, ale tak czy siak skrypt działa/nie działa następująco:
- po włączeniu/wejściu na strone w czatem załącza on wszystko prawidłowo, pasek przewija do dołu, lecz już po pierwszym odświeżeniu (w tym przypadku po 1 sekundzie), idzie on na samą górę i w tym miejscu już pozostaje, a zależy mi żeby co tą 1 sekund po pobraniu nowych wiadomości przesuwał się zawsze na sam dół
Forumowicze, proszę o pomoc i wytłumaczenie, gdyż o ile w php siedze od kilku lat, to js jest dla mnie nowością...
Pozdrawiam,
Kamil