当前位置: 首页 > 面试题库 >

在课程结业时更新外部数据库

姬熙云
2023-03-14
问题内容

我的情况;

Moodle中的用户完成了一个课程。一旦发生这种情况,我想更新一个外部数据库。我的理解是每次执行cron作业时都会触发course_completed事件。

用已完成课程的一些简单值(例如用户名/ ID,CourseID以及也许是完成日期)更新外部数据库的最佳方法是什么?

我宁愿不破解completion / cron.php来做到这一点,但是如果需要的话!


问题答案:

您需要创建一个本地插件。

http://docs.moodle.org/dev/Local_plugins

在/ local / myplugnname中创建插件

创建一个events.php文件

/local/mypluginname/db/events.php

有了这个

$handlers = array (
    'course_completed' => array (
        'handlerfile'      => '/local/mypluginname/lib.php',
        'handlerfunction'  => 'local_mypluginname_course_completed',
        'schedule'         => 'cron',
        'internal'         => 1,
    ),

在这里查看更多信息http://docs.moodle.org/dev/Events_API#Handling_an_event

您将需要一个version.php文件来安装插件并添加事件处理程序。

然后创建一个函数

function local_mypluginname_course_completed($eventdata)

/local/mypluginname/lib.pgp

当cron运行时将调用此方法

要找出$ eventdata的内容,请看一下

events_trigger('course_completed', $this->get_record_data());

/completion/completion_completion.php

要更新远程数据库,请查看db身份验证中的代码

/auth/db/auth.php

就像是

$mydb = ADONewConnection('mysql');
$mydb->Connect($dbhost, $dbuser, $dbpass, $dbname, false);
$mydb->Execute($insertsql);
$mydb->Close();


 类似资料:
  • UserViewModel: 用户存储库:

  • 数据更新时间指当前可分析数据是什么时间准备好的。通过它你可以了解到,目前数据的时效性。 eg:当数据更新时间显示为3分钟前,则代表可以查看约3分钟之前的数据;当数据更新时间显示00:00~6:00的某一个时间,则代表可以查看前一天以及更早的数据。 1.数据更新频率 (1) 当应用刚创建时,支持分钟级别数据更新频率,即刚上传的数据在几分钟内就能在系统中看到 (2) 当应用累计事件触发超过10000

  • 这个问题可能已经得到了回答,我读过很多类似的,但对我不起作用。因此,我的具有扩展的自定义表模型。我的数据是和列名。那么,当我的数据发生更改时,如何更新表呢?我一直在使用,它正在工作,但它将我的自定义单元格呈现器重置为默认值。谢了。

  • 问题内容: 我对android完全陌生,只想知道它是否是在主线程外更新UI的任何可行且可行的方法。仅从我的代码中,我就在下面列出了这些代码;根本不可能。但是, 我只想使用另一个线程来更新UI 。请事先帮助我! 问题答案: 使用activity.runOnUiThread

  • 我有一个cron作业每30秒运行一次,检查未结束的游戏。我将用于固定线程池。cron作业调用此方法: 其中是。在方法内部,我在循环中调用一个api,直到没有下一个页面。在这个方法中,我想更新数据库,以记住我最后看到的页面。 是否可以在一个线程中更新数据库,然后启动另一个线程,其中数据库再次更新?

  • 我有一个cron作业,每小时运行一次,用API的每小时数据更新本地数据库。 数据库按行存储每小时数据,API返回24个数据点,代表过去24小时。 有时数据点会丢失,所以当我拿回数据时,我不能只更新最近一个小时的数据——我还需要检查我以前是否有过这些数据,并填补发现的任何空白。 一切都在运行和工作,但cron作业每次至少需要30分钟才能完成,我想知道是否有任何方法可以使此运行更好/更快/更高效? 我