Получить данные из Moodle без входа в систему с помощью файла PHP

0

Я столкнулся с проблемой. Я должен получать данные из moodle без loggin. Я должен создать отдельный php, который не является частью каталога moodle. Этот файл будет извлекать курс из базы данных moodle и отображать его. Пожалуйста, помогите мне разыскать его.

Теги:
moodle

3 ответа

0

Вам нужно будет использовать веб-службы Moodle. Вы можете увидеть шаги по настройке, перейдя в раздел yourmoodleurl/admin/settings.php? Section = webservicesoverview. В основном,

  1. Включить веб-службы: yourmoodleurl/admin/search.php? Query = enablewebservices
  2. Выберите протокол, который будет использовать ваша служба: yourmoodleurl/admin/settings.php? Section = webserviceprotocols
  3. Создайте сервис, перейдя в раздел yourmoodleurl/admin/settings.php? Section = externalservices и нажав на связанный текст "Добавить", сообщите своей службе имя и установите флажок для включения, а затем сохраните.
  4. Добавьте функции в только что созданную службу. Вероятно, вам нужно что-то вроде core_course_get_contents, но вы можете изучить список функций api на вашем сайте /admin/webservice/documentation.php, чтобы узнать, какие функции предоставят вам нужные вам данные.
  5. Создайте пользователя и токен, которые будут использовать эту службу. Я создаю пользователя, называемый webservice, и сделаю метод аутентификации "аутентификацией веб-служб" и сделайте пользователя администратором сайта. Возможно, вы не захотите сделать это по соображениям безопасности и просто предоставите webservice: привилегия createtoken вместе с любой привилегией, необходимой для доступа к функции webservice.
  6. Выполните свой веб-сервис с помощью внешнего скрипта.
0

Правильное место для начала, вероятно, будет заключаться в использовании веб-служб Moodle (https://docs.moodle.org/en/Web_services), прежде чем вы начнете пытаться напрямую извлекать информацию из базы данных Moodle.

  • 0
    Я прочитал ссылку, предоставленную вами @Curtis Mattoon. Я не знаю, как использовать его в моем внешнем файле .php для доступа к базе данных Moodle без учетных данных базы данных. Пожалуйста, помогите
0

Попробуйте найти учетные данные базы данных для moodle в файле конфигурации и использовать их для чтения прямо из базы данных с помощью другого PDO DSN?

Ещё вопросы

Сообщество Overcoder
Наверх
Меню