获取Moodle上传文件的真实URL

时间:2023-02-05 13:00:15

I am trying to get the url to a file that I have uploaded to moodle. I want to access the file via the browser using http. The pathname of the file is hashed in the moodle database. Is there a way of getting the real url of uploaded files in moodle? this is the code I was trying out using the Moodle File API.

我正在尝试将URL添加到我上传到moodle的文件中。我想通过浏览器使用http访问该文件。该文件的路径名在moodle数据库中进行哈希处理。有没有办法在moodle中获取上传文件的真实网址?这是我尝试使用Moodle File API的代码。

<?php
require_once("../config.php");
$course_name=$_GET["course"];
$table_files="files";
$results=$DB->get_records($table_files,array('filename'=>$course_name));
//Get the file details here::::
foreach($results as $obj){
        $contextid=$obj->contextid;
        $component=$obj->component;
        $filearea=$obj->filearea;
        $itemid=$obj->itemid;
}
$url=$CFG->wwwroot/pluginfile.php/$contextid/$component/$filearea/$itemid/$course_name;
echo print_r($url);

?>

Will appreciate the help.

将不胜感激。

1 个解决方案

#1


0  

This works for Moodle version 2.3

这适用于Moodle版本2.3

<?php
    require_once("../config.php");

    $filename = "my_image.jpg";
    $table_files = "files";
    $results = $DB->get_record($table_files, array('filename' => $filename, 'sortorder' => 1));
    $baseurl = "$CFG->wwwroot/pluginfile.php/$results->contextid/$results->component/$results->filearea/$results->itemid/$filename";
    echo $baseurl;

The result is the Url to the image "my_image.jpg"

结果是网址为“my_image.jpg”的网址

#1


0  

This works for Moodle version 2.3

这适用于Moodle版本2.3

<?php
    require_once("../config.php");

    $filename = "my_image.jpg";
    $table_files = "files";
    $results = $DB->get_record($table_files, array('filename' => $filename, 'sortorder' => 1));
    $baseurl = "$CFG->wwwroot/pluginfile.php/$results->contextid/$results->component/$results->filearea/$results->itemid/$filename";
    echo $baseurl;

The result is the Url to the image "my_image.jpg"

结果是网址为“my_image.jpg”的网址