Есть таблица sqlite php без PDO расписывая все подробно
CREATE TABLE [deal_current](
[id] INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL,
[order_id] INT,
[notifies_text] VARCHAR,
[date_create] DATETIME,
[date_update] DATETIME,
[position_sort] INT DEFAULT 0);
Вывести все из таблицы deal_current используя bootstrap и SortableJS Сортировка списка за счет position_sort и date_create Проверяя есть date_update или нет Если есть тогда пометить как выполнено или нет то пометить как не выполнено
Применяя перетаскивание в SortableJS запоминая позиции пост запросом и обновляя их в position_sort по WHERE order_id и date_create
Каждую 37 секунд проверять в таблице orders колонку deal_update и если дата новее чем deal_current.date_create обновить UPDATE датой deal_update из orders колонку deal_current.date_update обновлять список выводить новую сортировку обновляя на странице динамически
Я создам решение с использованием PHP (без PDO), SQLite, Bootstrap и SortableJS для вывода и управления таблицей deal_current с сортировкой и динамическим обновлением.
index.php
html
•
update_positions.php
php
•
check_updates.php
php
•
database.sql
sql
•
Объяснение решения:
- index.php:
- Использует Bootstrap для стилизации списка сделок
- Загружает SortableJS для перетаскивания элементов
- Выводит данные из таблицы deal_current с сортировкой по position_sort и date_create
- Показывает статус (выполнено/не выполнено) на основе наличия date_update
- С помощью jQuery отправляет AJAX-запросы для обновления позиций и проверки обновлений
- update_positions.php:
- Обрабатывает POST-запрос от SortableJS
- Обновляет position_sort для каждого элемента на основе нового порядка
- Использует order_id и date_create в WHERE для точной идентификации
- check_updates.php:
- Проверяет, есть ли в таблице orders записи с deal_update новее, чем date_create в deal_current
- Если есть обновления, обновляет date_update в deal_current
- Возвращает обновленный HTML для динамического обновления списка
- database.sql:
- Содержит SQL для создания таблиц deal_current и orders
Для работы решения:
- Поместите все файлы в одну директорию
- Убедитесь, что SQLite база данных (database.db) создана
- Выполните SQL из database.sql для создания таблиц
- Настройте веб-сервер с поддержкой PHP и SQLite
- Убедитесь, что база данных доступна для записи
Список будет автоматически обновляться каждые 37 секунд, а позиции элементов сохраняются при перетаскивании.
1,6s