在Moodle中的块内查找上下文id
如何在Moodle 2.9.1中获取在Moodle中的块内查找上下文id,moodle,Moodle,如何在Moodle 2.9.1中获取上下文和上下文id 目前我在一个街区:问题纸 在表单提交操作页面中,我需要上下文id。我不知道如何获取块(或模块)中的上下文。我的代码如下所示: question\u action.php require_once(dirname(dirname(dirname(__FILE__))).'/config.php'); require_once(dirname(__FILE__).'/locallib.php'); global $DB, $CFG; req
上下文和上下文id
目前我在一个街区:问题纸
在表单提交操作页面中,我需要上下文id
。我不知道如何获取块(或模块)中的上下文。我的代码如下所示:
question\u action.php
require_once(dirname(dirname(dirname(__FILE__))).'/config.php');
require_once(dirname(__FILE__).'/locallib.php');
global $DB, $CFG;
require_once("$CFG->libdir/resourcelib.php");
if(isset($_GET['id'])){
$cid = $_GET['id'];} //course id
if(isset($_GET['poolid'])){
$paper= $_GET['paper'];} //question paper id
如何在这里找到context
和context id
。在block get_content()函数中,您可以从$this->context->id获取contextid
如果块中有一个额外的PHP页面,则需要确保任何链接都添加了某种标识符作为参数(可以是courseid、blockid或contextid)
假设您的所有链接末尾都有courseid(可能是最明智的选择),您可以在页面上写:
$courseid = required_param('id', PARAM_INT); // Do not use $_GET directly.
$course = $DB->get_record('course', ['id' => $courseid], '*', MUST_EXIST); // Optional, but you often need the course object.
$context = context_course::instance($courseid);
$contextid = $context->id;