Задвоение записей.

Все вопросы/проблемы по установке и использовании.
Ответить
alexinc
Сообщения: 391
Зарегистрирован: 03 мар 2022, 21:40
Имя: Alex
Откуда: Россия
Контактная информация:

Задвоение записей.

Сообщение alexinc »

Получил очень интереную ситуацию. При внесении записей происходит задвоение записей, причем иногда добавляются пачкой по три штуки. И в общем-то не понятно, куда копать.
Возможно, кто-то встречался с такой ситуацией. Система на хостинге.
Аватара пользователя
Fait
Инвестор
Инвестор
Сообщения: 764
Зарегистрирован: 19 ноя 2020, 17:46
Имя: Максим Балакшеев
Откуда: Россия, Златоуст
Организация: ИП Балакшеев Максим Георгиевич

Re: Задвоение записей.

Сообщение Fait »

alexinc писал(а): 15 ноя 2023, 22:50 Получил очень интереную ситуацию. При внесении записей происходит задвоение записей, причем иногда добавляются пачкой по три штуки. И в общем-то не понятно, куда копать.
Возможно, кто-то встречался с такой ситуацией. Система на хостинге.
Бывает, что когда сохраняешь или несколько раз нажимаешь Enter, или от нетерпения обновляет страницу из-за того, что "долго думает"
alexinc
Сообщения: 391
Зарегистрирован: 03 мар 2022, 21:40
Имя: Alex
Откуда: Россия
Контактная информация:

Re: Задвоение записей.

Сообщение alexinc »

В общем, нашлась проблема.
Используем публичную форму, в ней делаем две сущности (не AJAX), их нужно передавать в базу, после нажатия кнопки отправить. Но пользователи их видеть не должны. Поэтому, скрывать их нельзя в настройке - они не передадутся в базу. И таким образом, мы их скрываем с помощью JS - либо style.visibility = 'hidden', либо style.display = 'none'.
Так вот, при большом кол-ве записей в сущности, форма не отрабатывает. Вернее, так - при нажатии ОТправить - данные в базу попадают и они правильные, а вот далее форма не уходит, и начинает выедать всю память php запросом, вылетая с ошибкой 500. Причем сколько не дашь (давали до 2 гигов)- не хватает.
Почему так происходит не понятно, JS команды простые:
document.getElementsByClassName('form-group-807')[0].style.display = 'none';
document.getElementsByClassName('form-group-808')[0].style.display = 'none';
Почему происходит такой дикий скачок потребления памяти - не ясно.
Если JS код убрать - все происходит мнгновенно - и занос данных в базу и перенаправление на конечную страницу.
Может кто-то посоветовать или направить в какую сторону копать?
Аватара пользователя
Fait
Инвестор
Инвестор
Сообщения: 764
Зарегистрирован: 19 ноя 2020, 17:46
Имя: Максим Балакшеев
Откуда: Россия, Златоуст
Организация: ИП Балакшеев Максим Георгиевич

Re: Задвоение записей.

Сообщение Fait »

Попробуйте вот такой JS, у меня работает хорошо:

Код: Выделить всё

$(".form-group-807").hide();
$(".form-group-808").hide();
alexinc
Сообщения: 391
Зарегистрирован: 03 мар 2022, 21:40
Имя: Alex
Откуда: Россия
Контактная информация:

Re: Задвоение записей.

Сообщение alexinc »

Fait писал(а): 27 ноя 2023, 20:48 Попробуйте вот такой JS, у меня работает хорошо:

Код: Выделить всё

$(".form-group-807").hide();
$(".form-group-808").hide();
Не, не прокатило. Скрывать скрывает, но данные в базу не предает в скрытом режиме. И страница после отправки так же подвисает.
Я все-таки подозреваю нагромождение JS скриптов, но где и как это разгрести - не понятно. И через CSS скрыть не получилось. Либо я совсем не правильно все делаю и думаю.
Ответить