|
0 / 0 / 0
Регистрация: 25.05.2025
Сообщений: 52
|
||||||
Обмен сообщениями22.07.2025, 12:04. Показов 2445. Ответов 21
Метки нет (Все метки)
Привет, делаю обмен сообщениями.
База данных такая: `messages_messages`(`id`, `from_id`, `to_id`, `message`, `timestamp_created`, `is_deleted`) Дело в том что я хочу сделать обмен сообщениями. Код такой:
Мне нужно получить крайне сообщения переписки между людьми аналог диалогов. Как такое реализовать:
0
|
||||||
| 22.07.2025, 12:04 | |
|
Ответы с готовыми решениями:
21
Проблема с выводом полной версии сообщения(обмен сообщениями зарегистрированных пользователей) Проблема с выводом полной версии сообщения(обмен сообщениями зарегистрированных пользователей) обмен сообщениями на сайте пользователями |
|
Заблокирован
|
|||||||
| 22.07.2025, 12:44 | |||||||
1
|
|||||||
|
0 / 0 / 0
Регистрация: 25.05.2025
Сообщений: 52
|
||||||
| 26.07.2025, 14:35 [ТС] | ||||||
|
Здравствуйте есть такой код и работает вроде. Но не получается выбрать все сообщения конкретно мою переписку с пользователем функции messages
0
|
||||||
|
0 / 0 / 0
Регистрация: 24.07.2025
Сообщений: 1
|
||||||
| 26.07.2025, 17:56 | ||||||
|
почему так нужно делать с кодировкой, мне просто интересно?
0
|
||||||
|
2603 / 1507 / 689
Регистрация: 23.08.2015
Сообщений: 3,823
|
|||||||
| 26.07.2025, 18:10 | |||||||
0
|
|||||||
|
0 / 0 / 0
Регистрация: 25.05.2025
Сообщений: 52
|
||||||
| 16.09.2025, 13:15 [ТС] | ||||||
|
Здравствуйте мне нужно сделать обмен сообщениями, но не получается.
Есть такой код:
0
|
||||||
|
2603 / 1507 / 689
Регистрация: 23.08.2015
Сообщений: 3,823
|
|
| 16.09.2025, 13:28 | |
|
0
|
|
|
0 / 0 / 0
Регистрация: 25.05.2025
Сообщений: 52
|
||||||
| 16.09.2025, 13:30 [ТС] | ||||||
|
Сообщения)
Добавлено через 47 секунд Структура такая:
0
|
||||||
|
2603 / 1507 / 689
Регистрация: 23.08.2015
Сообщений: 3,823
|
||||||
| 16.09.2025, 13:41 | ||||||
|
ИванЛопатин, Если вам нужно вытащить сообщения между двумя пользователями (назовем user_id1 и user_id2), то вам необходимо найти пересечения по user_id1 AND user_id2.. но так как каждый из пользователей может находиться как в from_id так и to_id, то получается нужно расписать все случаи... и получиться так
К примеру если бы у нас была отдельная таблица с участниками.. то по ней проще было бы выбрать список "комнат" для текущего пользователя.
0
|
||||||
|
0 / 0 / 0
Регистрация: 25.05.2025
Сообщений: 52
|
|
| 16.09.2025, 13:43 [ТС] | |
|
А не подскажите как реализовать и какая структура должна быть для "К примеру если бы у нас была отдельная таблица с участниками.. то по ней проще было бы выбрать список "комнат" для текущего пользователя"
0
|
|
|
4405 / 1045 / 154
Регистрация: 16.01.2023
Сообщений: 2,587
|
||
| 16.09.2025, 13:44 | ||
|
0
|
||
|
0 / 0 / 0
Регистрация: 25.05.2025
Сообщений: 52
|
|
| 16.09.2025, 13:45 [ТС] | |
|
И как ваш код sql преобразовать в laravel eloquent то есть выборку через DB::table('im')
Добавлено через 25 секунд А что не так так и не пойму не получается
0
|
|
|
2603 / 1507 / 689
Регистрация: 23.08.2015
Сообщений: 3,823
|
||
| 16.09.2025, 14:30 | ||
|
msg__chat --------- id title type (private/group) last_message_id last_message_at msg__chat_to_user --------- user_id chat_id msg__message -------- id chat_id user_id (автор сообщения) text created_at При добавлении сообщения нужно обновлять поля last_message_id last_message_at Это деморализация для сортировки чатов.. потому как джоинить для этого таблицу со всеми сообщениями будет не очень оптимальным решением. Добавлено через 12 минут ну а last_message_id чтоб допустим достать по одному последнему сообщению с каждой комнаты.. Опять же чтоб не делать join-ы (либо группировок по всей таблице сообщений), я бы делал отдельным запросом, предварительно собрав id-шники сообщений.
0
|
||
|
0 / 0 / 0
Регистрация: 25.05.2025
Сообщений: 52
|
|
| 16.09.2025, 14:33 [ТС] | |
|
Мне подсказали как выводить сообщения между пользователями, но как сделать на подобие вк диалоги то есть страница со всеми сообщениями по оному на каждого пользователя?
0
|
|
|
2603 / 1507 / 689
Регистрация: 23.08.2015
Сообщений: 3,823
|
||
| 16.09.2025, 15:57 | ||
|
Чаще всего мы будем брать сообщения для конкретного диалога (либо напрямую по id сообщения). Для этого нам выгоднее, чтоб было отдельное поле id некого диалога. Выводить список диалогов через сложные запросы из миллиона сообщений - не лучшее решение.. Лучше ввести отдельную таблицу для этого.
0
|
||
|
0 / 0 / 0
Регистрация: 25.05.2025
Сообщений: 52
|
|
| 17.09.2025, 11:24 [ТС] | |
|
Спасибо а как такую систему реализовать
0
|
|
|
0 / 0 / 0
Регистрация: 25.05.2025
Сообщений: 52
|
|
| 17.09.2025, 11:33 [ТС] | |
|
Правильно я сделал??
0
|
|
|
Заблокирован
|
|
| 17.09.2025, 11:50 | |
|
ИванЛопатин, нажимаешь в phpmyadmin на вкладку "Структура таблицы". Находишь нужное поле, где надо проставить индекс и справа будет кнопка "Еще". Нажимаешь и выбираешь "Индекс". Если необходимо уникальное поле - тогда выберешь "Уникальный"
0
|
|
|
0 / 0 / 0
Регистрация: 25.05.2025
Сообщений: 52
|
|
| 17.09.2025, 12:24 [ТС] | |
|
А как сделать систему диалогов
0
|
|
|
2603 / 1507 / 689
Регистрация: 23.08.2015
Сообщений: 3,823
|
|
| 17.09.2025, 12:30 | |
|
0
|
|
| 17.09.2025, 12:30 | |
|
Помогаю со студенческими работами здесь
20
Обмен личными сообщениями
Обмен сообщениями Обмен сообщениями Обмен сообщениями (новичек) Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога
Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
|
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога
Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
|
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
|
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога
В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
|
|
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
|
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога
Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
|
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
|
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования.
Часть библиотеки BedvitCOM
Использованы. . .
|