gpt4 book ai didi

php - 通过 SQL 重置 Moodle 类(class)

转载 作者:行者123 更新时间:2023-11-28 23:54:53 25 4
gpt4 key购买 nike

我帮助维护一个 moodle 环境(版本 1.9.7),每个学期我们都需要对所有类(class)进行默认重置,但是有将近 500 类(class),每个类(class)都有一个论坛和两到四个测验,这样做非常乏味,需要很长时间。

我一直在到处寻找执行大量/批量类(class)重置的方法,但到目前为止没有任何效果。例如this code :

Ok, I figued it out, but be very carful. If you do not know what you are doing do not use this code, you could do a lot of damage to your DB. This does the "default" course reset to all course ids in the array.

<?php
require('../config.php');
require_once('reset_form.php');

$courseids = array(8,9,11);

foreach ($courseids as &$value) {


$data->MAX_FILE_SIZE = 8097152;
$data->reset_start_date = 1251781200;
$data->reset_events = 1;
$data->reset_logs = 1;
$data->reset_notes = 1;
$data->reset_roles = Array(5);
$data->mform_showadvanced_last = 0;
$data->reset_roles_local = 1;
$data->reset_gradebook_grades = 1;
$data->reset_assignment_submissions = 1;
$data->reset_forum_all = 1;
$data->id = $value;

$status = reset_course_userdata($data);
}
?>

有谁知道在执行默认重置时使用了哪些 SQL 指令?如果有任何帮助,我将不胜感激。

最佳答案

恐怕仅使用 SQL 进行重置将非常困难。重置代码也会调用每个模块中的函数,因此它们可以做自己的事情。

不过,看起来您在批量重置方面的方向是正确的。

不过我还是建议升级。 Moodle 1.9.7 现在很旧而且不受支持。升级路线为:

显然首先要在开发服务器上进行备份和测试。

关于php - 通过 SQL 重置 Moodle 类(class),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31971663/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com