Можно ли создать простенький чат с помощью сервера MySQL? Недавно нашел сервер,который поддерживает внешний доступ к MySQL(если нужно вот ссылка).Если можно пример
Этот топик читают: Гость
Ответов: 58
Рейтинг: 1
|
|||
карма: 0 |
|
Гость
Ответов: 17029
Рейтинг: 0
|
|||
Редактировалось 3 раз(а), последний 2017-06-14 22:42:49 |
|||
карма: 0 |
|
Ответов: 58
Рейтинг: 1
|
|||
г. Mr. Braun, для TCP_Server нужна машина,то есть сервер.Или можно без машины?.Просто не получится создать сервер,где закрыты порты.
|
|||
карма: 0 |
|
Гость
Ответов: 17029
Рейтинг: 0
|
|||
Редактировалось 3 раз(а), последний 2017-06-14 22:42:49 |
|||
карма: 0 |
|
Разработчик
Ответов: 4698
Рейтинг: 426
|
|||
Jonson, для MySQL тоже нужна машина, т.е. сервер. В любом случае вам его искать придется.
|
|||
карма: 10 |
|
Гость
Ответов: 17029
Рейтинг: 0
|
|||
Редактировалось 3 раз(а), последний 2017-06-14 22:42:49 |
|||
карма: 0 |
|
Гость
Ответов: 17029
Рейтинг: 0
|
|||
Редактировалось 3 раз(а), последний 2017-06-14 22:42:49 |
|||
карма: 0 |
|
Ответов: 58
Рейтинг: 1
|
|||
г. Mr. Braun, попробовал создать через FTP,но проблема,если один компьютер подключится к FTP,то уже другой не сможет подключиться.
------------ Дoбавленo в 16.25: Есть ограничения на количество подключений. ------------ Дoбавленo в 16.27: Я думал можно создать файл на сервере(например на ucoz) с помощью post запроса |
|||
карма: 0 |
|
Гость
Ответов: 17029
Рейтинг: 0
|
|||
Редактировалось 3 раз(а), последний 2017-06-14 22:42:49 |
|||
карма: 0 |
|
Гость
Ответов: 17029
Рейтинг: 0
|
|||
Редактировалось 3 раз(а), последний 2017-06-14 22:42:50 |
|||
карма: 0 |
|
Ответов: 58
Рейтинг: 1
|
|||
г. Mr. Braun, Спасибо большое
|
|||
карма: 0 |
|
Ответов: 278
Рейтинг: 4
|
|||
Вопрос задан правильно, ответ правильный выдан не был.
Есть: внешний сервер MySQL (с бесплатным размером в 5 мб). Требуется: независимые друг от друга подключения к этой самой внешней БД. Внешний - это значит, что сервер принимает любой запрос от любого пользователя по порту 3306. Никаких TCP/FTP для данной задачи не требуется. Какая выделенная машина, если она уже предоставлена с удалённым доступом к MySQL? Данную задумку сделать вполне реально и не сложно: 0. Выставляешь на сервере БД пользователя с правами на Query и Update (если мне не изменяет память) - Чтение и Запись, соответственно. Можно для начала выставить полный доступ, а опосля разобраться, какого доступа будет достаточно. 1. Берёшь любой пакет (предпочтительно - Delphi), где присутствует компонент MySQL. Заодно сразу же кидаешь либу (libMySQL.dll) в папку своей будущей программы, далее - Чат. Библиотека эта нужна для оснастки соединения с этой самой MySQL, удалённо. 2. Создаёшь на сервере мускула будущую структуру хранения данных, такую, какую хочешь. Например, для начала, логины и пароли пользователей и история сообщений. Желательно в MyISAM формате (для небольшого чатика как раз самое оно по скорости будет). 3. В Чате, непосредственно, организовываешь соединение с этой самой БД, считываешь данные логина, сравниваешь его с логином и паролем в Чате (с нижних точек EditBox'ов прямо можно). Продолжаешь работу с программой при их соответствии, при не соответствии лога с пассом - закрываешь, например. Желательно, конечно же, чтобы эти данные (лог и пасс) ещё и хешировались в MD5 и сравнивался не пасс с логом, а только хеш (для более мало-мальской безопасности). 4. При успешной авторизации предоставляешь доступ к EditBox'у, в котором уже печатаешь сообщение, которое летит на сервер через мускул и сохраняется в заранее тобою заготовленной таблице истории сообщений. 5. Отлаживаешь программу на ошибки, т.к. libMySQL не очень хорошо дружит с синхронными потоками, могут быть вылеты из программы. Придётся вникать в суть потоков и мьютексов, хотя это уже сделать будет не сложно, ибо присутвуют примеры в папке Examples. P.S. После окончания отладки всей программы я бы посоветовал заняться отладкой и оптимизацией самой базы данных. Например, т.к. ограничение в 5 мб у данного Free-сервиса, придётся историю сообщений лимитировать. Но для небольшого, как было описано в требованиях, чата, этого места вполне может хватить. 2ребятам: зачем вы направляете человека рубить дрова, если он ясно, с удочкой в руках, сказал, что он хочет ловить рыбу? ICQ и Jabber - это, конечно же, очень хорошо, но когда человек чётко задаёт вопрос, нужно хотя-бы услышать и понять этот вопрос, а уже после на него отвечать. |
|||
карма: 0 |
| ||
Голосовали: | Jonson |
Ответов: 58
Рейтинг: 1
|
|||
Vanchila, Спасибо за подробную инструкцию,буду пытаться делать.А то я уже подумал что это невозможно
|
|||
карма: 0 |
|
Ответов: 824
Рейтинг: 138
|
|||
Jonson писал(а): Можно ли создать простенький чат с помощью сервера MySQL?Vanchila, "зачем вы направляете человека рубить дрова, если он ясно, с удочкой в руках, сказал, что он хочет ловить рыбу", скорее человек пытается ловить рыбу топором, а дрова заготавливает удочкой. Потому как имеет смутное представление, что ему нужно. Простенький чат на MySQL? Подчеркиваю - "Простенький", на MySQL. Для Jonson - ну это совсем просто... Чего тут такого, посто нужно ко всему прочему изучит язык запросов SQL и другое... Конечно, это куда проще чем скачать клиент и зарегистрироваться на сервере Jabber, или ICQ, или QIP, или Я.Онлайн, или Google Talk... Правильно - Jonson берите напильник в руки и делайте из трактора самокат. Получится? Конечно получится, когда-нибудь. |
|||
карма: 1 |
|
Ответов: 58
Рейтинг: 1
|
|||
sashaoli, но я не хотел присоединять к программе сторонние сервисы.Сначала я понял,что создать просто чат через MySQL невозможно,нужен обязательно сервер,потом мне объяснили что это все-таки возможно и не так уж сложно,это все что я хотел узнать.
|
|||
карма: 0 |
|