Простой чат-мессенджер на PHP+MySQLi+Javascript без JQuery
Задача - создать простой чат-мессенджер, работающий по протоколу HTTP, где люди смогут легко регистрироваться и обмениваться сообщениями с другими пользователями.
Мы не будем использовать внешних библиотек вроде JQuery, правда, внешний стиль font-awesome я всё равно подключил, чтобы не возиться с оформлением.
Для установки приложения достаточно следующих действий:
1. Зайдя в утилиту phpMyAdmin своего хостинга, создайте базу данных с именем chat
, сопоставление можно оставить utf8mb4_general_ci
. Иногда хостер не разрешает создавать базу через стандартную утилиту, тогда должен быть отдельный инструмент для этого.
2. Выбрав в phpMyAdmin слева свою базу, нажмём "SQL" и выполним следующий запрос к базе:
-- Database: `chat` SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO"; START TRANSACTION; SET time_zone = "+00:00"; CREATE TABLE `messages` ( `msg_id` int(11) NOT NULL, `incoming_msg_id` int(255) NOT NULL, `outgoing_msg_id` int(255) NOT NULL, `msg` varchar(1000) NOT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; CREATE TABLE `users` ( `user_id` int(11) NOT NULL, `unique_id` int(255) NOT NULL, `fname` varchar(255) NOT NULL, `lname` varchar(255) NOT NULL, `email` varchar(255) NOT NULL, `password` varchar(255) NOT NULL, `img` varchar(255) NOT NULL, `status` varchar(255) NOT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; ALTER TABLE `messages` ADD PRIMARY KEY (`msg_id`); ALTER TABLE `users` ADD PRIMARY KEY (`user_id`); ALTER TABLE `messages` MODIFY `msg_id` int(11) NOT NULL AUTO_INCREMENT; ALTER TABLE `users` MODIFY `user_id` int(11) NOT NULL AUTO_INCREMENT; COMMIT;
Созданы 2 таблицы с нужной структурой.
3. Скачав архив приложения, развернём его в новую папку, все файлы закодированы в UTF-8 и менять это нельзя.
Скачать архив .zip приложения "Чат-мессенджер" (14 Кб)
Откроем нормальным текстовым редактором (например, Notepad++) файл php/config.php
и настроим первые 4 строчки, эти данные должны быть известны от хостера, например
$hostname = "myhost"; $username = "myuser"; $password = "mypassword"; $dbname = "chat";
В архиве приведены данные, которые обычно стоят на локалхосте.
4. С помощью ftp или другими средствами скопируем папку скрипта на сервер, учтём, какой URL-адрес при этом получается, например, если вы скопировали папку chat
в корневую папку сервера www.server.com
, это будет http://www.server.com/chat/
5. Запускаем чат по ссылке - и всё готово. Подтверждения E-mail и проч. при регистрации не нужно. Вот несколько скриншотов:
регистрация
вход
окно мессенджера
окно переписки
На хостинге с PHP 7.4 проверено, работает.
21.01.2024, 13:05 [1766 просмотров]