Легенда:
новое сообщение
закрытая нитка
новое сообщение
в закрытой нитке
старое сообщение
|
- Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
- Новичкам также крайне полезно ознакомиться с данным документом.
| | |
Я с jshttprequest не работал. поэтому в общем, подводные... 06.02.06 10:14 Число просмотров: 3400
Автор: ZloyShaman <ZloyShaman> Статус: Elderman
|
Я с JSHTTPRequest не работал. Поэтому в общем, подводные камни могут быть такие:
1. Мускул отдаёт данные в неправильной кодировке. Решение: смотреть character_set_results.
2. Веб-сервер перекодирует данные или клиент думает что данные не в той кодировке или вся страница отображается не в той кодировке, в какой приходят данные от сервера
Решение: отключить автоматическую перекодировку на сервере, указать кодировку явно через заголовок HTTP.
|
<web building>
|
Отрисовка чата 02.02.06 11:10
Автор: Pavlusha00 Статус: Незарегистрированный пользователь
|
Добро утро!
Есть чат на PHP.
Сообщения грузит через каждые 2 секунды.в мета refresh=2. База сообщений храниться в MySql;
Через каждые 2 секунды с сервера грузяться все сообщения, из базы, и отоброжаються. Когда их мало, все более мение. Когда их много, и появляеться Scroll все начинает мигать очень не приятно. Это из за того что много сообщений, как я понял.
Я подумал что можно сделать двумя способами:
1 - Грузить при первом заходе все сообщения в COOKIE и при обновлении страницы, грузить только последнии сообщения, с момента посл. загрузки. И тоже его в COOKIE. Потом выводить на стр. сообщения из COOKIE+посл. сообщение, загруженное с сервера.
2 - Грузить сообщения обычно 1 раз. А на Java или ещё на чемто написать загрузчик(непрерывный цикл?), который будет подгружать последнии сообщения с сервера (В другом невидимом Фрейме или окне... Пока как не знаю), и К body в конец приреплять это сообщение(я).
Я пробовал 2й вариант, но не смог это сделать на яве.
Писал Document.body = Document.body+'ТруЛялЯ<br>";
Не знаеет ли кто, может я вообще не правильно делать начал. Или какой метод альтернативный., загрузки сообщений. Самое главное чтобы окно не мигало.
Срочно!, проект горит...
Заранее спасибо.
|
|
динамическая подгрузка данных 02.02.06 20:28
Автор: ZloyShaman <ZloyShaman> Статус: Elderman
|
Посмотри в сторону JSHTTPRequest. И напиши что-нибудь подобное или используй его.
|
| |
Посмотрел! Большое спосибо! Очень подошло, то что нужно. 06.02.06 09:01
Автор: Pavlusha00 Статус: Незарегистрированный пользователь
|
> Посмотри в сторону JSHTTPRequest. И напиши что-нибудь > подобное или используй его.
Посмотрел! Большое спосибо! Очень подошло, то что нужно.
У меня счас чтото не получаеться заставить его работать с русскими буквами.
Пишу чат. load.php (JSHTTPRequest) использую для динам. погрузки сообщений.
load возвращает ????? вместо русских букв.
Но в примере (в JSHTTPRequest) все работает.
Читал что можно испльзовать iconv.
Также читал, что версия >3.0 работает корректно и без iconv, там все включено.
Какие могут быть подводные камни.
У меня ещё на странице 2 фрейма, и из каждого могут быть обращения через (JSHTTPRequest) к load.php.
Load.php кстати сторит message в базу MySQL нормально, без ???. Но динамически приписывает к чату на нерусском.
Есть код, могу скинуть на почту.
Заранее спасибо.
|
| | |
Я с jshttprequest не работал. поэтому в общем, подводные... 06.02.06 10:14
Автор: ZloyShaman <ZloyShaman> Статус: Elderman
|
Я с JSHTTPRequest не работал. Поэтому в общем, подводные камни могут быть такие:
1. Мускул отдаёт данные в неправильной кодировке. Решение: смотреть character_set_results.
2. Веб-сервер перекодирует данные или клиент думает что данные не в той кодировке или вся страница отображается не в той кодировке, в какой приходят данные от сервера
Решение: отключить автоматическую перекодировку на сервере, указать кодировку явно через заголовок HTTP.
|
| | | |
Проблема была в том что все данные через XML передаються в... 06.02.06 14:39
Автор: Pavlusha00 Статус: Незарегистрированный пользователь
|
Проблема была в том что все данные через XML передаються в UTF-8
Надо просто было в Load.php написать
request =
"q" = $Q
...
вместо
request =
"q" =win1251_to_utf8($q)
...
win1251_to_utf8 мона найти на PHP.net
|
|
|