![]() |
|
Модераторы: Sardar, Aliance |
![]()
|
|
| Gold Dragon |
|
|||
![]() Призрачный ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 6753 Регистрация: 1.3.2004 Где: Россия, Тамбов Репутация: 1 Всего: 71 |
Почитал многое что было написано о XMLHttpRequest , но ничего не понял... вернее не понял как это применять.
Может кто внятно и человеческим языком покажет на примере (прошу не давать на ссылки). Например: на страницу каждые 20 секунд должны с новой строчки дописываться данные с сервера (пусть это будет случайное число, которое генериться в скрипте на сервере) PS буду очень признателен, если кто выложит чат на XMLHttpRequest -------------------- Нельзя жить в прошлом, оно уже прошло. Нельзя жить в будущем, оно ещё не наступило. Нужно жить в настоящем, помня прошлое и думая о будущем! |
|||
|
||||
| Gold Dragon |
|
|||
![]() Призрачный ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 6753 Регистрация: 1.3.2004 Где: Россия, Тамбов Репутация: 1 Всего: 71 |
тему поднимаю... Может кто-то что-то скажет?
-------------------- Нельзя жить в прошлом, оно уже прошло. Нельзя жить в будущем, оно ещё не наступило. Нужно жить в настоящем, помня прошлое и думая о будущем! |
|||
|
||||
| Sardar |
|
|||
![]() Бегун ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 6986 Регистрация: 19.4.2002 Где: Нидерланды, Groni ngen Репутация: 78 Всего: 317 |
Gold Dragon извини, но так много было обсуждено, просто пользуйся поиском. Также стукни к Opik'у, Elfet'у и другим, что уже чаты сделали. У Opik'a лучше, ибо юзает XML (как и положено), а не eval(reg.responseText) что даже отдельных слов не заслуживает для своей оценки...
-------------------- Опыт - сын ошибок трудных © А. С. Пушкин Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik Оценить мои качества можно тут. |
|||
|
||||
| Gold Dragon |
|
|||
![]() Призрачный ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 6753 Регистрация: 1.3.2004 Где: Россия, Тамбов Репутация: 1 Всего: 71 |
Sardar
да втом то и дело, что пользовался поиском, но ничего толкового не нашёл (или не понял), везде по чуть-чуть -------------------- Нельзя жить в прошлом, оно уже прошло. Нельзя жить в будущем, оно ещё не наступило. Нужно жить в настоящем, помня прошлое и думая о будущем! |
|||
|
||||
| Black |
|
|||
|
Web-Development ![]() ![]() Профиль Группа: Участник Сообщений: 980 Регистрация: 15.8.2004 Репутация: 4 Всего: 45 |
Sardar
Я тоже в чате использую reg.responseText и не вижу в этом ничего плохого. Для меня главное сократить траффик. А с XML больше траффика выходит. Хотя, согласен с тобой, что с XML - более правильно. Хотя не обязательно делать чат XML. -------------------- Могу все, но ничего не умею :-) |
|||
|
||||
| Sardar |
|
|||
![]() Бегун ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 6986 Регистрация: 19.4.2002 Где: Нидерланды, Groni ngen Репутация: 78 Всего: 317 |
Идея не в том что правильно, а в том что удобно. Вот ты подгрузил текст, или регами или eval'ом получил массив, скриптами отформатировал и поставил. А не подумал о том что XSL это гораздо удобней, клиентская логика упрощаеться то пары строк, применил стиль и всё. При чём меняя стили/вёрстку меняем внешний вид месаги, не влезая в JS код. Xотя кому как, можно и решетом воду носить, было бы желание -------------------- Опыт - сын ошибок трудных © А. С. Пушкин Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik Оценить мои качества можно тут. |
|||
|
||||
| Gold Dragon |
|
|||
![]() Призрачный ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 6753 Регистрация: 1.3.2004 Где: Россия, Тамбов Репутация: 1 Всего: 71 |
Народ, я всё конечно понимаю, но можно что-нибудь по сути вопроса
-------------------- Нельзя жить в прошлом, оно уже прошло. Нельзя жить в будущем, оно ещё не наступило. Нужно жить в настоящем, помня прошлое и думая о будущем! |
|||
|
||||
| Cheba |
|
|||
![]() pointless one ![]() ![]() ![]() Профиль Группа: Vingrad developer Сообщений: 1777 Регистрация: 27.11.2003 Где: /dev/null Репутация: 1 Всего: 62 |
Конкретный пример (без кода).
Твой же чат. Каждые 20 сек вызывается функция (на таймере висит она). Эта функция спрашивает у сервера все изменения, которые произошли за последние 20 сек. Сервер возвращет пачку новых строк. Твоя функция эту пачку красиво дописывает в конец разговора. Чем же это отличается от обчного рефрешевого чата? Ну, хотябы тем, что невыкачивается каждый раз весь разговор, а только та часть, которая добавилась/изменилась со времени последнего опроса сервера. Чем это отличается от обычного потокового чата? А тем, что поток считывания не открыт постоянно. Он закрываеся сразу после загрузки всего необходимого на клиент. А потом сервер регулярно опрашивается на предмет изменений. Применений у XMLHTTPRequest просто масса. Вот я только-что описал чат на нем. А вообще-то его можно применять для самых разных целей. Основная идея состоит в том, что нам не приходится загружать сразу кучу данных, чтобы потом их отображать по запросу пользователя. И не приходится на малейшее действие пользователя реагировать перезагрузкой страницы. У нас всегда в броузере имеется страница, которая управляет отображением данных. Сами же данные подтягиваются через этот объект с сервера по мере надобности. Таким образом пользователь получает данные быстрее (страница не перезагружается - с сервера берутся только данные) и только те, которые ему нужны. |
|||
|
||||
| Gold Dragon |
|
|||
![]() Призрачный ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 6753 Регистрация: 1.3.2004 Где: Россия, Тамбов Репутация: 1 Всего: 71 |
Cheba
Принцип действия я понял, у меня проблемы с написанием этого.. Какие примеры не пробывал, почему-то не хочет всё работать. Вот и предложил показать пример, чтоб понять и дальше использовать -------------------- Нельзя жить в прошлом, оно уже прошло. Нельзя жить в будущем, оно ещё не наступило. Нужно жить в настоящем, помня прошлое и думая о будущем! |
|||
|
||||
| Cheba |
|
||||
![]() pointless one ![]() ![]() ![]() Профиль Группа: Vingrad developer Сообщений: 1777 Регистрация: 27.11.2003 Где: /dev/null Репутация: 1 Всего: 62 |
Ну, что же... Тогда держи вот пример с кодом.
Серверная часть (time.php) - отдает данные. В общем случае она должна смотреть на то, что у нее просят и в зависимости от запроса формировать данные. У меня же просто выдается XML с датой и времененм:
А вот клиентская часть. По нажатию кнопки будешь получать текущее врем и дату сервера.
Складываешь все это рядышком на сревере. Открываешь html-файл и давишь кнопку. Ну, и видишь результат, конечно. Проверялось на Лисе 1.5 и ИЕ 6. Работает. Будут конкретные вопросы - дам конкретные ответы. |
||||
|
|||||
| Gold Dragon |
|
|||
![]() Призрачный ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 6753 Регистрация: 1.3.2004 Где: Россия, Тамбов Репутация: 1 Всего: 71 |
Cheba
Что-то тишина вот криплю свои файлы (вдруг где ошибся) Присоединённый файл ( Кол-во скачиваний: 8 )
www.zip 1,26 Kb-------------------- Нельзя жить в прошлом, оно уже прошло. Нельзя жить в будущем, оно ещё не наступило. Нужно жить в настоящем, помня прошлое и думая о будущем! |
|||
|
||||
| Gold Dragon |
|
|||
![]() Призрачный ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 6753 Регистрация: 1.3.2004 Где: Россия, Тамбов Репутация: 1 Всего: 71 |
Всё народ, пример Cheba отлично работает (проблема была как всегда в лишних пробелах).
Принцип уяснил... Буду творить дальше -------------------- Нельзя жить в прошлом, оно уже прошло. Нельзя жить в будущем, оно ещё не наступило. Нужно жить в настоящем, помня прошлое и думая о будущем! |
|||
|
||||
| R.M. |
|
|||
![]() Анархист ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2164 Регистрация: 8.6.2005 Где: Питер Репутация: нет Всего: 30 |
А если обновить страницу то вся инфа скидывается. Этого можно както избежать?
-------------------- Помнишь как бодрили дискотеки прошлого века? Теперь стул, компьютер и нету человека. Nokia LifeStyle - Всё для смартфонов Nokia |
|||
|
||||
| Gold Dragon |
|
|||
![]() Призрачный ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 6753 Регистрация: 1.3.2004 Где: Россия, Тамбов Репутация: 1 Всего: 71 |
вот нашёл ещё очень хорошее объяснение с примером
http://mysitez.km.ua/Programming/?jshttpsend надеюсь что ссылка будет долгое время рабочей -------------------- Нельзя жить в прошлом, оно уже прошло. Нельзя жить в будущем, оно ещё не наступило. Нужно жить в настоящем, помня прошлое и думая о будущем! |
|||
|
||||
| Cheba |
|
|||
![]() pointless one ![]() ![]() ![]() Профиль Группа: Vingrad developer Сообщений: 1777 Регистрация: 27.11.2003 Где: /dev/null Репутация: 1 Всего: 62 |
1) у тебя урл не указан, наверное. 2) вторым параметром лучше передавать целое число, а не строку. Просто чтобы было удобней читать. 3) 1 - это сильно мало. У тебя броузер нагнется. Попробуй поствить хотябы секунду - 1000 милисекунд. 4) не помешало бы почитать документацию. Там хотябы параметры методов описаны описаны... |
|||
|
||||
| R.M. |
|
|||
![]() Анархист ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2164 Регистрация: 8.6.2005 Где: Питер Репутация: нет Всего: 30 |
А можно ли какойнить простой примерчик, просто чтобы скажем кажде 5 сек было обновление?
Ставил на интервал function getTime(url) но ничего не произошло -------------------- Помнишь как бодрили дискотеки прошлого века? Теперь стул, компьютер и нету человека. Nokia LifeStyle - Всё для смартфонов Nokia |
|||
|
||||
| Cheba |
|
|||
![]() pointless one ![]() ![]() ![]() Профиль Группа: Vingrad developer Сообщений: 1777 Регистрация: 27.11.2003 Где: /dev/null Репутация: 1 Всего: 62 |
Куксикус, видимо, плохо ставил.
Показывай код. |
|||
|
||||
| R.M. |
|
||||
![]() Анархист ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2164 Регистрация: 8.6.2005 Где: Питер Репутация: нет Всего: 30 |
Cheba
Блин, кода у меня неосталось, щас попробую ещё раз поставить. Я же приводил пример на 1 странице тока ево ктото потёр, ты даже его процитировал и ответил мне
Куда делась часть поста непонятно Добавлено @ 04:32 Пишу так (JS плохо знаю, так что пробовал по разному и в разные места)
подскажите пожалуйста как правильно сделать чтобы данные обновлялись Это сообщение отредактировал(а) Куксикус - 26.1.2006, 04:26 -------------------- Помнишь как бодрили дискотеки прошлого века? Теперь стул, компьютер и нету человека. Nokia LifeStyle - Всё для смартфонов Nokia |
||||
|
|||||
| AlDev |
|
|||
|
Опытный идиотъ ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1927 Регистрация: 17.4.2005 Где: Irk, rus Репутация: нет Всего: 50 |
||||
|
||||
| Cheba |
|
|||
![]() pointless one ![]() ![]() ![]() Профиль Группа: Vingrad developer Сообщений: 1777 Регистрация: 27.11.2003 Где: /dev/null Репутация: 1 Всего: 62 |
Чтобы это работало, надо чтобы была "глобальная" переменная url. Иначе функция ее не увидит и фактическим значением, передаваемым в функцию, бедкт undefined. |
|||
|
||||
| R.M. |
|
|||
![]() Анархист ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2164 Регистрация: 8.6.2005 Где: Питер Репутация: нет Всего: 30 |
Cheba
Тогда мне надо передавать
?? или объявить переменную url? -------------------- Помнишь как бодрили дискотеки прошлого века? Теперь стул, компьютер и нету человека. Nokia LifeStyle - Всё для смартфонов Nokia |
|||
|
||||
| Cheba |
|
|||
![]() pointless one ![]() ![]() ![]() Профиль Группа: Vingrad developer Сообщений: 1777 Регистрация: 27.11.2003 Где: /dev/null Репутация: 1 Всего: 62 |
Если первое, то функция сама должна где-то брать урл, если второе... то просто обяви ее правильно.
|
|||
|
||||
| R.M. |
|
|||
![]() Анархист ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2164 Регистрация: 8.6.2005 Где: Питер Репутация: нет Всего: 30 |
Cheba
А откуда она берётся в твоём коде? -------------------- Помнишь как бодрили дискотеки прошлого века? Теперь стул, компьютер и нету человека. Nokia LifeStyle - Всё для смартфонов Nokia |
|||
|
||||
| Gold Dragon |
|
|||
![]() Призрачный ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 6753 Регистрация: 1.3.2004 Где: Россия, Тамбов Репутация: 1 Всего: 71 |
Куксикус
да положи весь свой код -------------------- Нельзя жить в прошлом, оно уже прошло. Нельзя жить в будущем, оно ещё не наступило. Нужно жить в настоящем, помня прошлое и думая о будущем! |
|||
|
||||
| R.M. |
|
|||
![]() Анархист ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2164 Регистрация: 8.6.2005 Где: Питер Репутация: нет Всего: 30 |
Gold Dragon
Я код взял тот который Cheba выложил на первой странице -------------------- Помнишь как бодрили дискотеки прошлого века? Теперь стул, компьютер и нету человека. Nokia LifeStyle - Всё для смартфонов Nokia |
|||
|
||||
| Cheba |
|
|||
![]() pointless one ![]() ![]() ![]() Профиль Группа: Vingrad developer Сообщений: 1777 Регистрация: 27.11.2003 Где: /dev/null Репутация: 1 Всего: 62 |
Куксикус,но ты же его изменил. Так-что не жмись, выкладывай.
|
|||
|
||||
| R.M. |
|
|||
![]() Анархист ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2164 Регистрация: 8.6.2005 Где: Питер Репутация: нет Всего: 30 |
Cheba
Да я не жмусь, просто опять скажут что мол я тут никого не уважаю т.к. незнаю элементарных вещей, ну вобщем код вот, я впринципе почти ничего и не менял
Добавлено @ 01:34 Пишет что определение url отсутствует но я не совсем понимаю чему должна быть равна url -------------------- Помнишь как бодрили дискотеки прошлого века? Теперь стул, компьютер и нету человека. Nokia LifeStyle - Всё для смартфонов Nokia |
|||
|
||||
| Ciber SLasH |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1813 Регистрация: 9.11.2004 Где: С.-Петербург Репутация: 24 Всего: 67 |
Ещё бы серверную часть запостил бы, тогда и я бы потестировал...
|
|||
|
||||
| R.M. |
|
|||
![]() Анархист ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2164 Регистрация: 8.6.2005 Где: Питер Репутация: нет Всего: 30 |
Ciber SLasH
Серверную я не менял, какая была такая и есть, вот
Мне именно важно чтобы информация из серверного скрипта обновлялась каждые скокато секунд, т.е. другими словами нужен чат на XMLhttprequest,помогите сделать обновление остальное я сделаю сам -------------------- Помнишь как бодрили дискотеки прошлого века? Теперь стул, компьютер и нету человека. Nokia LifeStyle - Всё для смартфонов Nokia |
|||
|
||||
| Ciber SLasH |
|
||||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1813 Регистрация: 9.11.2004 Где: С.-Петербург Репутация: 24 Всего: 67 |
Вот:
test.htm:
time.php:
|
||||
|
|||||
| R.M. |
|
|||
![]() Анархист ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2164 Регистрация: 8.6.2005 Где: Питер Репутация: нет Всего: 30 |
Ciber SLasH
Спасибо большое -------------------- Помнишь как бодрили дискотеки прошлого века? Теперь стул, компьютер и нету человека. Nokia LifeStyle - Всё для смартфонов Nokia |
|||
|
||||
| Ciber SLasH |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1813 Регистрация: 9.11.2004 Где: С.-Петербург Репутация: 24 Всего: 67 |
Всегда пожалуйста.
|
|||
|
||||
| Cheba |
|
|||
![]() pointless one ![]() ![]() ![]() Профиль Группа: Vingrad developer Сообщений: 1777 Регистрация: 27.11.2003 Где: /dev/null Репутация: 1 Всего: 62 |
Ciber SLasH, зря запрет кеширования убрал.
|
|||
|
||||
![]()
|
| Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | JavaScript: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |