2013-07-25 48 views
1

我正在嘗試將URL上傳到我上傳到moodle的文件中。我想通過瀏覽器使用http訪問文件。該文件的路徑名在moodle數據庫中被散列化。有沒有辦法在moodle中獲取上傳文件的真實網址?這是我嘗試使用Moodle File API的代碼。獲取上傳到Moodle的文件的真實URL

<?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); 

?>

將欣賞幫助。

+0

的Moodle的什麼版本? – Drew

+0

我不完全確定「真實網址」的含義。你只是試圖生成從Moodle請求該文件所需的URL,或者你想繞過該文件並直接轉到該文件? – Mark

回答

0

這適用於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; 

結果的URL圖像 「my_image.jpg」