Localizar um arquivo de uma questão do questionário no moodledata

Localizar um arquivo de uma questão do questionário no moodledata

por Lino Vaz Moniz -
Número de respostas: 0

Para mapear um arquivo, ou seja, uma imagem que foi feito upload no enunciado de uma questão do banco de questões do questionário (quiz) do Moodle, primeiramente pegue o url do imagem. 

A seguir está o exemplo de um endereço de imagem da questão.

MOODLE_URL/pluginfile.php/45/question/questiontext/preview/45/core_question/165/165/teste.png

Alguns parâmetros do url se referem a valores gravados na tabela mdl_files. Segue novamente o url com os parâmetros mapeados entre colchetes. Esses parâmetros se referem a nome da colunas da tabela mdl_files

 MOODLE_URL/pluginfile.php/{contextid}/{component}/{filearea}/preview/{contextid}/core_question/{itemid}/{itemid}/{filename}

 Para mapear no banco de dados o registros da imagem, basta executar o seguinte comando SQL

SELECT * FROM mdl_files WHERE component = 'question' AND contextid = 45 AND itemid= 165

 Você deve ter notado que o valor registrado em cada coluna  compõem o url foi usado no parâmetros SQL. Agora basta seguir a mesma lógica referente o url da sua imagem e executar o comando a seguir passando os valores  para cada parâmetro.

 SELECT * FROM mdl_files WHERE component = ? AND contextid = ? AND itemid= ?

 Ao executar o comando você irá visualizar o contenthash do arquivo. Agora siga a orientação nesse post, para encontrar o arquivo no moodledata.