Вставка инфы в таблицу после редактирования профиля
Задача такая: после редактирования профиля(а именно, полей которые входят в столбец таблицы cms_user_profiles(formsdata)) нужно вставить эти же значения в другую таблицу cms_user_param(нужно проследить динамику изменений)
Куда во frontend.php вбивать запрос insert...select что бы это проходило только после изменений этого столбца(formsdata)
Заранее спасибо =)
Dmitriy, можно не править указанный файл, а написать плагин на эвент UPDATE_USER_PROFILES. Будет доступен массив данных, подготовленных для обновления таблицы cms_user_profiles. Проверяйте элемент массив 'formsdata' — это строковое значение в формате Yaml. Если вам нужно сравнивать как то значение, то соответственно в плагине получайте предыдущее значение данного поля (плагин выполняется до обновления данных) и проводите нужные манипуляции.
Здраствуйте Fuze,
Не по теме, но близко к ней.
По поводу форм в анкете пользователя.Если создаю поле с большим количеством символов, например 1000, то после его заполнения и сохранения пользователем оно почему то обрезается, и обрезается текст в поле в следующем поле от него.Пожайлсута если возможно проверьте.
Версия 1.10.3
Напишите максимально подробно действия, чтобы я смог повторить это у себя.Если создаю поле с большим количеством символов, например 1000, то после его заполнения и сохранения пользователем оно почему то обрезается, и обрезается текст в поле в следующем поле от него.
В конструкторе форм, в анкете пользователя создаю поле "Обо мне".
Напишите максимально подробно действия, чтобы я смог повторить это у себя.
У меня оно по порядку 6, до него :
[1] Телефон
[2] Контактное лицо
[3] Веб сайт
[4] E-mail
[5] Доп.информация
[6] Обо мне
[7] Минимальная сумма заказа
Для поля "Обо мне " в настройках "Макс. длина:" выставляю значение 1000.(соответственно Описание: Максимум 1000 знаков)
Для следующего за ним поля "Минимальная сумма заказа " в настройках "Макс. длина:" выставлено значение 200.
Теперь при редактировании профиля, заполняем поле "Обо мне" текстом 1000 символов и поле "Минимальная сумма заказа" 200 символов и сохраняем.
После сохранение поле "Обо мне " обрезается, поле "Минимальная сумма заказа" бывает обрезается бывает нет, как я заметил смотря сколько символов в поле "Обо мне ", но не факт.
При повторном редактирование поле "Минимальная сумма заказа" бывет почему то пустым.
Спасибо.
Dmitriy, можно не править указанный файл, а написать плагин на эвент UPDATE_USER_PROFILES. Будет доступен массив данных, подготовленных для обновления таблицы cms_user_profiles. Проверяйте элемент массив 'formsdata' — это строковое значение в формате Yaml. Если вам нужно сравнивать как то значение, то соответственно в плагине получайте предыдущее значение данного поля (плагин выполняется до обновления данных) и проводите нужные манипуляции.
Плагин, если я правильно понимаю, такой же файл с расширением .php, который я в нужный момент вызову в frontend.php? так? а где взять шаблон подобного плагина? А то я не совсем понял как это реализовать.
нет, делайте по аналогии с существующими плагинами, которые находятся в директории /plugins.Плагин, если я правильно понимаю, такой же файл с расширением .php, который я в нужный момент вызову в frontend.php? так?
alexbabo, проверю, если баг подтвердится, будет исправление.
Dmitriy, можно не править указанный файл, а написать плагин на эвент UPDATE_USER_PROFILES. Будет доступен массив данных, подготовленных для обновления таблицы cms_user_profiles. Проверяйте элемент массив 'formsdata' — это строковое значение в формате Yaml. Если вам нужно сравнивать как то значение, то соответственно в плагине получайте предыдущее значение данного поля (плагин выполняется до обновления данных) и проводите нужные манипуляции.
А как массив то этот извлечь, он же в другом файле? Поясните пожалуйста.
Массив передается в плагин в метод execute.А как массив то этот извлечь, он же в другом файле? Поясните пожалуйста.
делайте по аналогии с существующими плагинами, которые находятся в директории /plugins.
а тут еще Странник подсуетился с Генератором плагина...
??
Большое спасибо, почти получилось. Данные успешно вносятся в другую таблицу, но никак не могу поместить в неё id пользователя с которым произошли изменения, видимо в этом массиве ид пользователя не передается, т.к. переменные$article['id']и $article['user_id'] пустые . Не подскажите как выкрутиться?
Массив передается в плагин в метод execute.А как массив то этот извлечь, он же в другом файле? Поясните пожалуйста.
делайте по аналогии с существующими плагинами, которые находятся в директории /plugins.