Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737 Форумы портала PHP.SU :: Пример Чата из книги "AJAX и PHP. Разработка динамических веб-приложений"
Покинул форум
Сообщений всего: 48
Дата рег-ции: Март 2008
Помог: 0 раз(а)
Доброго времени суток. Вот эта книга:
Там есть пример чата с использованием технологии PHP и AJAX. Я эти листинги полностью переписал и десять раз проверил. Ничего не работает! Если кто сталкивался с такой проблемой, отпишите. Если знаете где в сети лежат исходники, то скиньте ссылку на них. Буду премного благодарен. Спасибо.
Champion
Отправлено: 02 Ноября, 2008 - 08:19:24
Активный участник
Покинул форум
Сообщений всего: 4350
Дата рег-ции: Авг. 2008 Откуда: Москва
Помог: 57 раз(а)
1 - Проблему неплохо бы описать.
2 - Переписывать листинги - не правильно. Вы бы лучше поняли что и как, потом написали бы сами, подсматривая иногда в листинги
Для решения проблемы
1 - проверьте работоспособность скрипта на php
2 - не блокирует ли браузер js?
3 - проверьте, не происходит ли ошибок в яваскрипт-коде. Для начала синтаксических. Пользуйтесь Файрбагом в Файрфоксе, в Опере тоже чего-то есть
Сложного в аяксе нет ничего. Посмотрите темы, вопрос про АЯКС недано несколько раз уже был.
Agassi
Отправлено: 02 Ноября, 2008 - 12:41:44
Частый гость
Покинул форум
Сообщений всего: 158
Дата рег-ции: Окт. 2008
Помог: 0 раз(а)
Чаше всего проблема с кодировкой.Кто пользуется 1251 кодировку в аяксе и пробует отправить русскые буквы,то получает фиг место того,что ожыдалось получить.
Аякс начил на этой книге учить.НА первом же примере начились грабли.
В книге ничего про кодировку не написано.Полез в гугль.Нашол этот вопрос, никто не смог норм ответить почему.Начил сам капатся и наконец нашол
А этот чат недавно сдёр с книги.И шас его переделываю для одного проэкта.
Очень простой чат,в которой ниодной ошибки не должо быть.
Неправильно ты переписал (Добавление)
rar пишет:
Если знаете где в сети лежат исходники, то скиньте ссылку на них.
Какие исходники.У тебя в книге сам исходник лежит
rar
Отправлено: 02 Ноября, 2008 - 12:50:15
Новичок
Покинул форум
Сообщений всего: 48
Дата рег-ции: Март 2008
Помог: 0 раз(а)
Хорошо, вот файлы чата: http://ifolder[dot]ru/8867077
Все переписано полностью, посмотрите пожалуйста.
Там в файле config.php, закомментирован SQL-запрос на создание таблицы к чату, не забудьте БД создать (`chat`) и запрос исполнить. Жду результатов. Спасибо.
Покинул форум
Сообщений всего: 48
Дата рег-ции: Март 2008
Помог: 0 раз(а)
Вот спасибо. Работает... Спасибо, буду дальше заниматься.
Agassi
Отправлено: 02 Ноября, 2008 - 13:14:11
Частый гость
Покинул форум
Сообщений всего: 158
Дата рег-ции: Окт. 2008
Помог: 0 раз(а)
Незачто
Советую с кодировкой разобратся сперва,если делаешь аякс,ато ошыбка перед глазами,а найти не получается
rar
Отправлено: 02 Ноября, 2008 - 13:21:12
Новичок
Покинул форум
Сообщений всего: 48
Дата рег-ции: Март 2008
Помог: 0 раз(а)
Спасибо, уже разобрался. (Добавление)
Из моего архива index.html вставьте и все хорошо с кодировкой.
Agassi
Отправлено: 02 Ноября, 2008 - 16:32:49
Частый гость
Покинул форум
Сообщений всего: 158
Дата рег-ции: Окт. 2008
Помог: 0 раз(а)
МОжет улучшим чат пошагово??
Я шас его хачу внедрить в один проэкт(в стиле веб игр,где есть комнаты и есть некая базза,где записываются люди кто шас онлайн).Как чат он очень простенькый и удобный.
Как хочу зделать??
Создать поле с именем "sms" в баззе у каждого клиента.
При отправке сообшение,в это поле записывается сообшение.
У клиента есть аякс,который делает запррос каждый 20сек серверу,проверяет есть ли сообшения для него.А при отправке самим клиентом сообшение,то она автоматом проверят входяшие сообшения.
Никаких проблем не вижу,хотя при внедрени всегда бывает недочёты
Вопрос:
Как можна изменить часть AJAX и внедрить место него модуль.Который на сервере сама будет отправлять сообшение адресату,при получении его от клиента???
rar
Отправлено: 02 Ноября, 2008 - 18:05:02
Новичок
Покинул форум
Сообщений всего: 48
Дата рег-ции: Март 2008
Помог: 0 раз(а)
Сложно так сказать. Ну ежели клиент посылает на сервер какой-то запрос, то значит на сервере происходит какое-то событие, ну и надо привязать ваше действие к этому событию. В данном случае срабатывает код которые отвечает за прием сообщений от клиента.
Если есть что интересное обсудить, вот мое скайп-имя: vlad_num
Покинул форум
Сообщений всего: 158
Дата рег-ции: Окт. 2008
Помог: 0 раз(а)
Вот именно.Сервер может сохранить все айпи и отправить кому надо черзе айпи.Пока не углубился как имено(СОкеты или что-там ещё есть .....)
Дапстим мы отправим.Тогда такое.Как зделать чтоб у клиента AJAX сидел на чтени,и ждал собшение от сервера????
rar
Отправлено: 02 Ноября, 2008 - 19:32:56
Новичок
Покинул форум
Сообщений всего: 48
Дата рег-ции: Март 2008
Помог: 0 раз(а)
Я думаю тут принцип должен быть такой же, как и у какого-нибудь почтового сервера.
PHPLamer
Отправлено: 04 Ноября, 2008 - 13:16:07
Частый гость
Покинул форум
Сообщений всего: 171
Дата рег-ции: Сент. 2008 Откуда: Russia, Krasnodar
Помог: 2 раз(а)
Agassi пишет:
Дапстим мы отправим.Тогда такое.Как зделать чтоб у клиента AJAX сидел на чтени,и ждал собшение от сервера????
Нужно чтобы был цикл в джава скрипте и он проверял содержимое переменной которое отправляет сервер. Соответственно когда переменная получает значение можно его выводить с помощью джавы.
ПСЫ: Это я там думаю, я только начал изучать джаву.
Agassi
Отправлено: 04 Ноября, 2008 - 14:57:57
Частый гость
Покинул форум
Сообщений всего: 158
Дата рег-ции: Окт. 2008
Помог: 0 раз(а)
PHPLamer пишет:
Нужно чтобы был цикл в джава скрипте и он проверял содержимое переменной которое отправляет сервер.
А как отправить из сервера?)Чтоб тот который ждёт,знал что это ему)
valenok
Отправлено: 04 Ноября, 2008 - 16:07:39
Здесь могла бы быть ваша реклама
Покинул форум
Сообщений всего: 4574
Дата рег-ции: Июль 2006 Откуда: Israel
Помог: 3 раз(а)
как то ты мутно поставил цель, чтото рассказал про сокеты и ip
и удивляешься что ничего не работает.
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.