Где лучше хранить php\html для послед обработки.. в файле или БД?

Европа - быстрые серверы на дисках NVMe от $5 / Русский датацентр от 199руб

Тема в разделе "PHP & JavaScript & AJAX & JQUERY & HTML & FLASH", создана пользователем Юрий Вакуленко, 17 ноя 2018.

  1. AnrDaemon

    AnrDaemon Продвинутый новичок

    Сообщения:
    4.641
    Ваш город:
    Moscow, Russia
    Address:
    Moscow, Russia
    Country:
    Location on Map:
    У того же Smarty есть возможность принудительно ограничивать функционал шаблонизатора, по сути задавая ограниченный язык, условно-безопасный для использования посторонними лицами.
    Вам же хочется посоветовать более вдумчиво анализировать ТЗ. Ну не верю я, что может существовать 5000 ТИПОВ вопросов(заданий).
     
  2. Юрий Вакуленко

    Юрий Вакуленко Новичок

    Сообщения:
    37
    Ваш город:
    Киев, город Киев, Украина
    Address:
    Kyiv, Ukraine
    Country:
    Location on Map:
    мне нужно сделать более 5000 онлайн упражнений. Да, из них есть однотипные упражнения.. но более 60-70% из них - совсем не похожи друг на друга!
    Если все эти 5000 заданий разбить на группы по схожести разметки упражнения.. то и выйдет наверное около 300 типов разных упражений.. я просто физически не смогу каждый раз назначать нужный тип каждому упражнению и на основе него формировать код из шаблона чтобудет соотв. типу упражнения.

    Зайдите на платформу под аккаунтом что я давал в пред постах.. и даже в тех 3х уроках.. что открыты вы увидите дофига упражнений!! И что они все похожи друг на друга? Да есть с почти идентичной разметкой.. но в большинстве случаев - каждое упражнение - уникально..

    я бы не морочил ни себе ни вам мозги если речь шла о однотипных заданиях.. и маленьком их кол-ве!
     
  3. ksnk

    ksnk прохожий

    Сообщения:
    1.083
    Address:
    Sankt-Peterburg, Russia
    Country:
    Location on Map:
    У Blade , вроде, все что надо есть - и определение собственных тегов-функций и даже php вставки, так что выбор шаблонизатора тут не принципиален. Важным моментом при реализации такого движка будет обеспечить единственный текст задания в единственном месте. Будет плохо, если каждый тест нужно будет сопровождать десятком отдельных записей БД или файлов. От каждого теста будет требоваться
    • текст самого задания, с вставленными полями - он порождается шаблоном
    • данные по ответам - их можно породить при генерации текста и сохранить в сессии, к примеру или при первой генерации текста - в базе, или еще как извернутся... В сессии, вроде, нормально.
    • При проверке введенных пользователем данных - извлечь из сессии
    • Еще могут понадобится какие-то атрибуты, которые самим тестом определяются - теги-признаки самого теста, что-то типа (книга №6, страница 85, вопрос 3, ...) которые легко закрываются описанием дополнительных тегов шаблона, которые можно дописать с начала текста.
    Нужно чтобы внутри текста, на языке шаблонизатора, можно было компактно и доступно для понимания описать желаемое поле ввода, возможные варианты ответа, правильные ответы и так далее, что поможет обработать ввод.
     
  4. Юрий Вакуленко

    Юрий Вакуленко Новичок

    Сообщения:
    37
    Ваш город:
    Киев, город Киев, Украина
    Address:
    Kyiv, Ukraine
    Country:
    Location on Map:
    можно еще проще.. массив $_POST с ответами что пользователи вводят в упражнении передавать в Контроллер Урока. Он обработает это массив с пользов ответами (сравнит их с массивом с правильными ответами, запишет ответы в БД и некоторую статистику для упр) и в шаблонизатор передаст массив, в котором уже вся службная инф о упражнении будет предварительно подготовлена.. (выполнено ли упражнение правильно.. кол-во верных ответов, оценка, дата выполнения и т.д.) и тогда в самом шаблонизаторе не нужно выполнять никакой доп обработки, кроме как обработать массив с данными, который передал контроллер.

    Мне Blade очень нравится за то, что там можно писать хоть весь шаблон на чистом пхп! Не надо изучать спец. синтаксис шаблонизатора! Очень не многие шаблонизаторы имеют такую функцию!
     
  5. AnrDaemon

    AnrDaemon Продвинутый новичок

    Сообщения:
    4.641
    Ваш город:
    Moscow, Russia
    Address:
    Moscow, Russia
    Country:
    Location on Map:
    Эээ… вообще-то это подразумевалось… шаблонизатор - это средство вывода информации, а не её обработки.
     
  6. WMix

    WMix герр M:)ller Партнер клуба

    Сообщения:
    6.311
    Ваш город:
    Berlin
    Address:
    Berlin, Germany
    Country:
    Location on Map:
  7. Юрий Вакуленко

    Юрий Вакуленко Новичок

    Сообщения:
    37
    Ваш город:
    Киев, город Киев, Украина
    Address:
    Kyiv, Ukraine
    Country:
    Location on Map:
  8. AnrDaemon

    AnrDaemon Продвинутый новичок

    Сообщения:
    4.641
    Ваш город:
    Moscow, Russia
    Address:
    Moscow, Russia
    Country:
    Location on Map:
    @WMix, это годится только для совсем уж простых вещей.
     
  9. Юрий Вакуленко

    Юрий Вакуленко Новичок

    Сообщения:
    37
    Ваш город:
    Киев, город Киев, Украина
    Address:
    Kyiv, Ukraine
    Country:
    Location on Map:
    так и есть.. я буду использовать шаблонизатор Blade. Буду создавать отдельные шаблоны для каждого упражнения.. а в БД хранить название файла шаблона и путь к нему..
     
  10. WMix

    WMix герр M:)ller Партнер клуба

    Сообщения:
    6.311
    Ваш город:
    Berlin
    Address:
    Berlin, Germany
    Country:
    Location on Map:
    @AnrDaemon, не понимаю о чем ты, это и база и валидация и шаблон, на этом очень сложные вещи пишут
     
  11. AnrDaemon

    AnrDaemon Продвинутый новичок

    Сообщения:
    4.641
    Ваш город:
    Moscow, Russia
    Address:
    Moscow, Russia
    Country:
    Location on Map:
    О том, что это подходит только для одного типа вопросов - тестов.
    Что-то более разумное на этом будет сделать сложно. Но можно.
     
  12. WMix

    WMix герр M:)ller Партнер клуба

    Сообщения:
    6.311
    Ваш город:
    Berlin
    Address:
    Berlin, Germany
    Country:
    Location on Map:
    возможно, ты просто не понимаешь xslt
     
  13. Adelf

    Adelf Laravel&PhpStorm Команда форума

    Сообщения:
    3.337
    Ваш город:
    Казань
    Address:
    Kazan, Russia
    Country:
    Location on Map:
    я бы не назвал это недостатком ;-)
     
  14. WMix

    WMix герр M:)ller Партнер клуба

    Сообщения:
    6.311
    Ваш город:
    Berlin
    Address:
    Berlin, Germany
    Country:
    Location on Map:
    почему?