Перейти к содержанию
Официальный форум поддержки Simpla

Где находится код записи в базу feedback со страницы


Рекомендуемые сообщения

Написана кастомная форма сбора данных у пользователей с несколькими страницами, написана не мной - я вообще не очень разбираюсь в веб-программировании, эта форма собирает данные анкеты и кладёт в базу. Я нашёл в базе их в виде одной строки в таблице feedbacks в столбце message. Мне нужно их внешним скриптом (симпла уже ни при чём) их достать и отпарсить, и сейчас проблема в том что там некоторые поля анкеты пересекаются по названию - и парсер перезаписывает массив. Нужно изменить поля при записи в базу, и вот не могу найти, где код, который отвечает за преобразование английских переменных со страницы в симпле в русские при записи в базу.

Буду очень благодарен если подскажете куда копать

Ссылка на сообщение
Поделиться на другие сайты

Описание метода add_feedback в файле я нашёл, спасибо что подтвердили, не могу найти где в коде он запускается.

Сама анкета висит прямо на главной, попробую ещё погрепать в поисках запуска метода, видимо он внутри скриптов - форма на яваскрипте. Не может быть что это где-то внутри скомпилированного файла? Такое вообще возможно? По идее нет, но на всякий уточняю т.к. не знаю глубоко вопрос.

 

Английские переменные в русские - смотрите, внутри страницы - я вижу в коде, нужные мне переменные создаются как положено, на латинице с уникальными именами. А дальше видимо в целях облегчения программинга, разработчики сделали такую штуку - они собрали все данные из анкеты, и чтобы не создавать таблицу с 40 полями, просто положили их в виде строки в одно поле таблицы, т.е. видимо это всё прописывалось через стандартный метод поста комментария CMS.

В админке сайта данные собранной анкеты выводятся в виде текстовой таблички по ссылке http://мойсайт/simpla/index.php?module=FeedbacksAdmin - там они чем-то парсятся, чтобы каждая пара ключ-значение были на одной строке, при этом ключ получается русскими буквами, и т.к. логические блоки идут по порядку, то человек это воспринимает нормально, но мне то нужно эту анкету экспортировать, и вот тут дело становится сложнее - нужны уникальные ключи, можно на русском, это не важно

Ссылка на сообщение
Поделиться на другие сайты

...там они чем-то парсятся...

Ищите точно, как и где. Одна из простейших возможностей - используется serialize().
Ссылка на сообщение
Поделиться на другие сайты

Ищу, код главной раскидан по многим файлам, и пока не могу в голове сложить последовательность. index.php запускает /view/IndexView.php, далее View.php, далее module.php index.tpl в котором основная часть страницы выводится внешним вызовом <main>
    {$content}
</main> и дальше я запутался.

 

Судя по анализу страницы, запись инициируется по нажатию кнопки Отправить ява-скриптом, там какая-то очень мудреная строка, заканчивающаяся возвратом return this, я его почитал через сервис unminify.com внутри скрипта если я правильно понимаю, лежит логика ввода по полям, но вызова никаких функций не вижу. Переменные все с техническими именами - одной буквой.

http://сайт/design/default/js/main.min.js - это адрес скрипта.

 

Наши разработчики пока молчат, хотя предложили уже за деньги поправить, время уходит а результата нет, вот и пытаюсь расковырять

Ссылка на сообщение
Поделиться на другие сайты

в шаблоне index.tpl или main.tpl form обрабатывает какойто метод и акшен или нет?

Изменено пользователем shooroop
Ссылка на сообщение
Поделиться на другие сайты

Не могу пока сказать, наши разработчики сделали то что просили, так что вопрос пока снят, для своего интереса ещё попробую понять что по анализам файлов. Спасибо всем поучаствовавшим

Ссылка на сообщение
Поделиться на другие сайты

Судя по анализу файлов, добавлен скрытый дополнительный custom_label в поле ввода, и видимо что-то в скрипте. Как это работает я не понимаю и оставлю разработчикам на откуп, но суть видимо да - некая функция приводит массив к строке и пишет в базу

Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
×
×
  • Создать...