Фильтрация новых чисел в форме с записями в базе от FormIt
Здравствуйте все.
Помогите, пожалуйста, разобраться со сравнением новых, сгенерённых из URL, чисел/номеров с существующими в базе, записанными FormItSaveForm.
Ситуация простая:
— генерим URL с числом/номером в base64, переходим по нему в браузере;
— транскодируем его в число/номер при помощи сниппета и вставляем в поле формы FormIt;
— проводим сравнение: если номер в базе не записан — FormItSaveForm записывает значение, если номер существует — редирект на страницу: «Такой ID уже существует».
Раньше делал эту проверку по старинке в связке FormIt -> FormSave -> запись в файл.txt -> сравнение чисел в форме и файле. Решил сделать более грамотно через FormItSaveForm. Зачем писать в файл и читать его потом, когда можно «смотреть» в базу и сравнивать?
Готового решения найти не смог. Смотрел в сторону фильтров phx и pdoFetch, но запутался в двух соснах — квалификации не хватает…
Подскажите, пожалуйста, можно ли реализовать проверку числового значения на странице с записями в базе данных (например, из поля FormIt: field_1) с последующим редиректом, если номера совпадают?
Помогите, пожалуйста, разобраться со сравнением новых, сгенерённых из URL, чисел/номеров с существующими в базе, записанными FormItSaveForm.
Ситуация простая:
— генерим URL с числом/номером в base64, переходим по нему в браузере;
— транскодируем его в число/номер при помощи сниппета и вставляем в поле формы FormIt;
— проводим сравнение: если номер в базе не записан — FormItSaveForm записывает значение, если номер существует — редирект на страницу: «Такой ID уже существует».
Раньше делал эту проверку по старинке в связке FormIt -> FormSave -> запись в файл.txt -> сравнение чисел в форме и файле. Решил сделать более грамотно через FormItSaveForm. Зачем писать в файл и читать его потом, когда можно «смотреть» в базу и сравнивать?
Готового решения найти не смог. Смотрел в сторону фильтров phx и pdoFetch, но запутался в двух соснах — квалификации не хватает…
Подскажите, пожалуйста, можно ли реализовать проверку числового значения на странице с записями в базе данных (например, из поля FormIt: field_1) с последующим редиректом, если номера совпадают?
Комментарии: 3
Насколько я знаю, FormIt сохраняет данные в виде JSON и проверить, есть ли запись с таким значением одного из полей будет проблематично.
Поэтому лучше производить запись данных в базу самостоятельно — создать табличку, прописать схему и номер записывать в отдельный столбец. Тогда и проверку можно будет сделать очень просто.
Есть готовое, но платное решение — customExtra. Зато в документации есть пример создания новой записи, останется только проверку дописать.
Из бесплатного есть MIGXdb, но я с ним так и не разобрался)
Поэтому лучше производить запись данных в базу самостоятельно — создать табличку, прописать схему и номер записывать в отдельный столбец. Тогда и проверку можно будет сделать очень просто.
Есть готовое, но платное решение — customExtra. Зато в документации есть пример создания новой записи, останется только проверку дописать.
Из бесплатного есть MIGXdb, но я с ним так и не разобрался)
Илья, благодарю за ответ. Да потыкался, почитал, поискал… Не хватает опыта разработчика (а я совсем не разработчик), чтобы внятно разобраться с этими дополнениями. Тем более, MIGX-совые дела надо конкретно углублённо изучать, чтоб понимать что и зачем делаешь. А это много практико-часов надо наработать. Я обычно ищу готовые пошаговые руководства и применяю. По простому…
Может быть подскажешь, есть ли какие примеры по проверке полей из базы данных и данных на странице?
Может быть подскажешь, есть ли какие примеры по проверке полей из базы данных и данных на странице?
Неа, готовых примеров не встречал.
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.