Форум программистов, компьютерный форум, киберфорум
Бета-тестирование
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.54/13: Рейтинг темы: голосов - 13, средняя оценка - 4.54
775 / 444 / 93
Регистрация: 24.10.2012
Сообщений: 3,240
Записей в блоге: 5

Приглашаю принять участие в тестировании простенького чата на php

31.05.2013, 19:10. Показов 2853. Ответов 20
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Ссылка на чат находится на сайте http://sunumbrella.tk/schoolchat/ . Нужно кликнуть на бело-синюю иконку чата вверку страницы и откроется не большое окно. Дальше все понятно.

Если кому то нужен такой простенький скрипт чата - могу отдать просто так

Чат делал два дня, очень простой. Если заметите серьезные ошибки в работе отпишитесь в этой теме. Время в чате выставленно по Московскому GMT.
1
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
31.05.2013, 19:10
Ответы с готовыми решениями:

Приглашаю принять участие в разработке учебного проекта
Всем привет! Приглашаю принять участие в разработке учебного проекта. От вас: Понимание ООП Уверенные знания SE git

предлогаем принять участие в создании проекта
Здравствуйте! Меня зовут Светлана. Приглашаем команду волонтёров специалистов в области .NET C# для участия в создании группы некомерческих...

Прошу принять участие в опросе про хостинг
Добрый день всем. Хотелось бы узнать мнение большинства, как Вы выбираете хостинг, размещение сервера и т.д.? Хотела вставить опросник,но...

20
Неадекват
 Аватар для freeba
1501 / 1237 / 248
Регистрация: 02.04.2010
Сообщений: 2,807
31.05.2013, 20:09
Цитата Сообщение от tolimadokara Посмотреть сообщение
Если заметите серьезные ошибки в работе отпишитесь в этой теме
"Войну и мир" переварить не смог. Завис
0
775 / 444 / 93
Регистрация: 24.10.2012
Сообщений: 3,240
Записей в блоге: 5
31.05.2013, 21:57  [ТС]
freeba-смайлик, не понял вас?
0
Неадекват
 Аватар для freeba
1501 / 1237 / 248
Регистрация: 02.04.2010
Сообщений: 2,807
01.06.2013, 01:31
tolimadokara, ограничения на длину сообщения нет. Повесят чатик.
0
 Аватар для Николай12
-7 / 15 / 0
Регистрация: 13.05.2012
Сообщений: 169
01.06.2013, 19:21
В целом прикольный чатик. Я тоже такие делал, когда начинал PHP изучать.

В чате есть одна очень серьёзная ошибка:
Нет защиты от HTML кода. Кто-то уже внедрил вредоносный JS скрипт.

Ещё ошибки:
1) Нет ограничения на длину сообщения
2) Чат неправильно отображает имя пользователя, введённое русскими буквами.

И пожелания:
1) Можно использовать более новую версию jQuery вместо вашей 1.3.2, ведь сейчас доступна версия 1.10.1 и 2.0.2(Без поддержки IE6-8)
2) Нежелательно использовать фреймы
3) Скрипты лучше делать в кодировке UTF-8
4) Все чаты работают с помощью AJAX
5) Можно добавить такие инструменты как добавление смайликов и форматирование сообщения
6) Можно разделить пользователей в чате по группам, например модераторы и пользователи.
0
 Аватар для BaboshinSD
349 / 288 / 49
Регистрация: 15.11.2012
Сообщений: 477
Записей в блоге: 1
01.06.2013, 22:30
С точки зрения пользователя нужно добавить:
1. Отправку сообщения Enter'ом
2. Перевод строки Shift-Enter
3. Обновление на стороне пользователя (Яваскрипт?)
0
Охотница на ведьм
 Аватар для Vedma
313 / 97 / 8
Регистрация: 26.11.2011
Сообщений: 2,784
Записей в блоге: 5
02.06.2013, 12:25
Цитата Сообщение от BaboshinSD Посмотреть сообщение
1. Отправку сообщения Enter'ом
Поддерживаю...а то отправят стишок
0
 Аватар для BaboshinSD
349 / 288 / 49
Регистрация: 15.11.2012
Сообщений: 477
Записей в блоге: 1
02.06.2013, 12:33
Ещё вот на это нужно обратить внимание:
Странно как-то сообщения отображаются: то новые сверху, то снизу. Не поймёшь куда смотреть...
Например Vedma написала в 12:24 - появилось сверху, я написал 12:27 - появилось снизу, а между ними наша вчерашняя переписка...
0
775 / 444 / 93
Регистрация: 24.10.2012
Сообщений: 3,240
Записей в блоге: 5
02.06.2013, 15:12  [ТС]
Спасибо всем за конструктивные пожелания.
Цитата Сообщение от BaboshinSD
Например Vedma написала в 12:24 - появилось сверху, я написал 12:27 - появилось снизу

Не по теме:

плохо SQL знаю, если кто подскажет как получить последние n запросов с таблицы. там выбирает ORDRE BY date DESC LIMIT 25



Добавлено через 2 часа 9 минут
1. сортировку постов настроил. отображаются последние 25 постов по времени
2. отправка сообщений по клавише Enter

максимальная длина сообщения 100 символов
0
Антикодер
Эксперт функциональных языков программирования
1888 / 870 / 48
Регистрация: 15.09.2012
Сообщений: 3,088
03.06.2013, 00:05
Прикольный чат, а ты делал на SetInterval-e?

Давай вместе сделаем чат на websocket-ax? А то у меня тоже чат на SetInterval-е написан.

Просто у нас серверная часть на websocket-ах может быть одинаковая. Или её может лучше на C++ писать?

Клиентская часть у нас врятли может быть одинаковой. Просто совместно проще веб-сокеты освоить.

Хотя в инете итак есть сервера на PHP. Надо будет подумать

Добавлено через 10 минут
может кто встречал быстрые серверы для чатов на веб-сокетах?
0
14 / 15 / 2
Регистрация: 21.04.2012
Сообщений: 192
03.06.2013, 02:31
Цитата Сообщение от tolimadokara Посмотреть сообщение
Если кому то нужен такой простенький скрипт чата - могу отдать просто так
Буду очень рад, если подаришь. А то я написал приложение на андроид, используя хостинг сайта как бд, а сайт так пустой и стоит. Было бы не плохо прикрутить его туда.
0
Всегда онлайн
 Аватар для MrOnlineCoder
1084 / 788 / 295
Регистрация: 07.04.2013
Сообщений: 2,703
03.06.2013, 20:32
Чат норм, но есть минус:
  1. Не работает кнопка Enter, когда я нажимаю ее, то сообщение не отправляется в чат (т.е не выводится в лог)
И несколько пожеланий:
  1. Сделать анти-мат.
  2. Добавить список пользователей
  3. Добавить несколько команд (т.е /me, /quit, /help и т.д)
0
 Аватар для BaboshinSD
349 / 288 / 49
Регистрация: 15.11.2012
Сообщений: 477
Записей в блоге: 1
03.06.2013, 21:30
Ещё не плохо бы было запретить одинаковые ники.
0
775 / 444 / 93
Регистрация: 24.10.2012
Сообщений: 3,240
Записей в блоге: 5
03.06.2013, 22:52  [ТС]
Цитата Сообщение от 8VAid8
Буду очень рад, если подаришь
Видимо не буду я его роздавать, извини. Люди заходят в чат, может быть он когда то оживет. Если тебе очень скрипт чата нужен то вот http://www.phpfreechat.net/ . Безоплатный и мощный, все на высшем уровне
Цитата Сообщение от MrOnlineCoder
Не работает кнопка Enter
Уже работает
Цитата Сообщение от MrOnlineCoder
Сделать анти-мат
Сделал
Цитата Сообщение от MrOnlineCoder
Добавить список пользователей
Не надо...
Цитата Сообщение от MrOnlineCoder
Добавить несколько команд (т.е /me, /quit, /help и т.д)
Можно док по командам? Интересно
Цитата Сообщение от MrOnlineCoder
Ещё не плохо бы было запретить одинаковые ники
Запретил уже
0
Антикодер
Эксперт функциональных языков программирования
1888 / 870 / 48
Регистрация: 15.09.2012
Сообщений: 3,088
03.06.2013, 23:05
Цитата Сообщение от tolimadokara Посмотреть сообщение
Видимо не буду я его роздавать, извини. Люди заходят в чат, может быть он когда то оживет.
молитесь, чтоб его не оживили роботы )
0
775 / 444 / 93
Регистрация: 24.10.2012
Сообщений: 3,240
Записей в блоге: 5
06.06.2013, 18:12  [ТС]
Дарю форумчанам свой чат (см. вложение schoolchat.zip). Чат написан *овнокодом, так что звиняйте, времени отточить скрипты небыло.

Как настроить чат ?
Кликните здесь для просмотра всего текста
1. скачайте архив schoolchat.zip

2. распакуйте этот архив в корневую директорию вашего http сервера. При этом адрес окна чата будет в виде http://www.yourdomain.com/smilechat/

3. добавьте между тегами HEAD вашей html страницы/страниц тег SCRIPT заинклудивающий браузерный код который открывает маленькое окно чата
HTML5
1
<script type="text/javascript" src="smilechat/javascript/smilechat.js"></script>
4. поместите в исходный код вашей html страницы кнопку чата тегом IMG
HTML5
1
<img src="smilechat/res/smilechat-gray.gif" onclick="smilechat_open()" style="cursor: pointer; padding: 10px;" />
5. создайте две таблицы в вашей БД используя файл schoolchat.sql

6. укажите в файле schoolchat/mysql.php параметры доступа к вашему серверу БД (исп. сервер MySQL)

7. чат готов к работе. Кликние по кнопке чата на вашей странице (см. п.4) и откроется небольшое окошко в котором вам необходимо выполнить вход

Как работает чат ?
Кликните здесь для просмотра всего текста
Чат открывается одной html страницей (файл index.html) и содержит два фрейма. Верхний фрейм - это окно лога чата. Нижний фрейм это поле ввода текста и кнопка «Отправить».

В верхнем фрейме (файл template/top_frame.html) через каждые 8 000 милисекунд происходит обращение к скрипту chat.php и, если есть новые сообщения они загружаются псредством ajax в DIV контейнер с идентификатором chatlog
HTML5
1
<div id="chatlog"><DIV>
Одновременно с получением новых сообщений происходит запорос к скрипту chat.php для получения списка пользователей чата которые помещаются в DIV с классом userlist
HTML5
1
2
3
4
5
6
<div class="usersbox_cont">
    Кто в чате?<br/>
    - - - - - - - - - - - - - - - - - - - - - - -<br/>
    <div class="userslist"></div>
    - - - - - - - - - - - - - - - - - - - - - - -
</div>
В чате есть статусы пользователей. Если над верхним фреймом не было движение крусора мыши в течении 15 минут (900 000 мили сек.) то статус конкретного пользователя сменяется на оффлайн запросом к скрипту chat.php. Если вновь подвигать мышкой над верхним фреймом окна чата, статус сменится на онлайн. Переходы с одного статуса на другой уведомляются выводом сообщений в окно чата для всех его учатников

В нижнем фрейме (файл template/bottom_frame.html) содержится java script ф-я new_message которая активируется после нажтия клавиши Enter в поле ввода текста, либо нажатием на кнопку «Отправить» Когда активируется данная ф-я происходит ajax запрос на скрипт chat.php которому отправляется тело сообщения которое было введено в поле ввода.

Чат построен на небольшом самописном фреймворке, или модели движка. Это файлы mysql.class.php, db.class.php, system.class.php, parser.class.php, templater.class.php.

Кликните здесь для просмотра всего текста
Файл mysql.class.php содержит набор методов для работы с БД MySQl

Фалй db.class.php содержит набор методов-функций которое обращаются к таблицам БД. В иделае каждый метод должен содержать только SQL запросы к БД без стороннего системного кода

Файл system.class.php содержит набор системных методов движка проекта (чата) это ф-я cookie_generate которая генерирует хеш сесии cookie в виде набора символов длиной 32 знака

Файл parser.class.php соодержит набор методов для работы с шаблонами проекта, для их парсинга и замены меток в html коде шаблонов. Этот файл не изменяется.

Файл templater.class.php содержит набор методов для разбора шаблонов проекта и замены меток в шаблонах.


Файл chat.php это точка входа в проект. Благодаря ключевому слову switch происходит соответствующее действие в зависимости от содержания POST переменной окружения chataction

Каталог res/ содержит набор ресурсов проекта, т.е. - графики, картинок.

Каталог javascript/ предназначен для хранения файлов браузерного java script кода чата

В чате работает автоцензор, который построен на классе greenDetect (он описан здесь) Текстовая БД нецензурных выражений содержится в корне каталога


Если кто-то будет совершенствовать проект чата, есть пожелание ввести в конфигурационный файл вот такие настроечки
Кликните здесь для просмотра всего текста
Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
// Максимальное количество подключений с одного ip адреса
parameter
 
// Количество сохраняемых сообщений чата
parameter
 
// Использовать сжатие gzip в БД
parameter
 
// Таймаут сесии cookie (часов)
parameter
 
// Таймаут между отправкой сообщений (секунд)
parameter
 
// Таймаут удаления пользователя со списка присутствующих (секунд)
parameter
 
// Таймаут перехода в статус «отсутствует» (секунд)
parameter
 
// Тамаут автообновления окна чата (секунд)
parameter
 
// Максимальное количество символов в сообщении
parameter
 
// Включить автоцензор в сообщениях
parameter

И не усложнять воспрятие пользователей сложным функционалом во время переделелывания проекта.
Вложения
Тип файла: 7z schoolchat.7z (27.9 Кб, 16 просмотров)
2
775 / 444 / 93
Регистрация: 24.10.2012
Сообщений: 3,240
Записей в блоге: 5
15.07.2014, 22:33  [ТС]
Чат вновь работает: sunumbrella.tk/. Заходите.

Не по теме:

Там надо кликнуть на облачка в левом-верхнем.

Сколько чат просуществует не известно. Автор чата разместил скрипт на бесплатном тарифном плане хостинга. Так же домен в зоне *.tk анулируется через 1 год. Либо если не наберется 20 уникальных посещений в месяц :cry:.

0
Заблокирован
19.07.2014, 09:06
Люди заходят в чат, может быть он когда то оживет.
Неееееет, ето надо раскручивать.
Пусть по черному -- спамом -- но надо. Бан в Яндексе, может, получишь, зато в Гугле будет в топе

А пожелания... Тысячи их!
1)Капчу добавить. Простенькую. Или регу.
Но ето потом, пока ботов и так не будет
2)Поле для текста сделать белым или с рамочкой -- в Хромиуме сливается с фоном, когда не активно
3)Убрать алерт про "Добро пожаловать".
Инфа о BB тегах должна быть под рукой и с примерами
4)А то с urlом не понял, то ли лыжи не едут, то ли я чего-то делаю не так
5)Разлиновку в фоне сделать помягче
6)Поле для текста сделать побольше или растянуть
7)Максимальную длину текста увеличить
8)Поле для текста сделать многострочным. Перенос строки по Ctrl-Enter
9)Автоцензор пропускает иные матерные слова и задерживает нематерные. По примеру такого и другого слова привел во время тестирования xD
10)Вставка смайликов
11)Отправка файлов

Мб тебе ето все и покажется адовым морем работы, но если хочешь оживить чат, то сделай все ето.
Еще и мало будет
0
Всегда онлайн
 Аватар для MrOnlineCoder
1084 / 788 / 295
Регистрация: 07.04.2013
Сообщений: 2,703
19.07.2014, 18:13
Зашел, чат не работает. Ошибка 404 на awardspace.com
0
775 / 444 / 93
Регистрация: 24.10.2012
Сообщений: 3,240
Записей в блоге: 5
21.07.2014, 09:45  [ТС]

Не по теме:

Цитата Сообщение от MrOnlineCoder
Зашел, чат не работает. Ошибка 404 на awardspace.com
Взламали наверно.

Надо разбиратся что там...



Добавлено через 16 часов 20 минут
Чат настроил - работает. Не знаю, на долго ли.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
21.07.2014, 09:45
Помогаю со студенческими работами здесь

Кто хочет принять участие в создании компютерной игры?
Здравствуйте! На данном этапе есть только сюжет: ...

Где можно принять участие в open source проекте?
Есть ли сайты помимо codeplex сайты где можно взять участие в open source проекте?

Кто хочет принять участие в создании компьютерной игры?
Здравствуйте! Игра - симулятор рыбалки.

Выведите минимальное число аналитиков, которые должны принять участие
ххх проводит внутреннее соревнование по компьютерной безопасности и приглашает принять участие департаменты безопасности, разработки и...

Для желающих принять участие в новом проекте (тестовый режим - в июле).
В стадии запуска интернет-проект‚ связанный с развитием новых видеосервисов. Контент для портала создается по принципиально новой...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Подключение Box2D v3 к SDL3 для Android: физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
Влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru