Form Upload Moodle

Form Upload Moodle

di Fabio Di Paolo -
Numero di risposte: 4

Ciao a tutti,

sto cercando di fare un semplice form per fare l' upload di file ma purtroppo credo che moodle non mi permetta di caricare e file su una cartella nella directory.

Ho tentato di utilizzare la classe form messa a disposizione ma c'è qualcosa che non va.

Qualcuno mi può, per cortesia, aiutare o dicendomi perchè da un file cust non posso caricare i file su una directory esterna e/o postare un esempio dell'utilizzo della classe form?

Grazie mille e scusate la domanda ma sono abbastanza nuovo nell'ambiente di moodle

Grazie ancora

Fabio Di Paolo


Media dei voti:  -
In riposta a Fabio Di Paolo

Re: Form Upload Moodle

di Matteo Scaramuccia -

Ciao Fabio,
Moodle non può caricare nulla nella sua web folder ma solamente nella cartella DATAROOT o MOODLEDATA che dir si voglia. Inoltre il file è posizionato in maniera particolare per rispettare il contesto in cui questo file è stato caricato.

L'API per gestire i files in Moodle è documentata qui:

E' un po' ostica all'inizio ma una volta compresa nelle sue "intimità" risulta facile.

Per quanto riguarda l'uso di form di upload puoi guardare direttamente nel codice core, per esempio nel modulo SCORM1 ma anche leggere la documentazione:

HTH,
Matteo

 

1 Il file del modulo SCORM è /mod/scorm/mod_form.php, in particolare:

In riposta a Matteo Scaramuccia

Re: Form Upload Moodle

di Fabio Di Paolo -

Ottimo Matteo, ho risolto.

Grazie mille!

Fabio

In riposta a Fabio Di Paolo

Re: Form Upload Moodle

di Fabio Di Paolo -

Scusate, purtroppo ho un grosso problema perchè oltre allì'upload di file devo avere la possibilità di poter fare un lin ka questi file.

C' è la possibilità di poter fare un link all'nterno della cartella moodledata?

Oppure caricarei file in una cartella differente da moodledata che è dentro la private?

GRazie e scusate

Fabio

In riposta a Fabio Di Paolo

Re: Form Upload Moodle

di Matteo Scaramuccia -

Ciao Fabio,
si e lo trovi nella documentazione: pluginfile.php è solitamente la pagina da usare e devi arricchirla dei parametri del contesto del tuo file registrato.

A seconda del tipo di registrazione potrebbe essere necessario appoggiarsi invece a draftfile.php, soprattutto quando provieni da una form: come esempio, guarda come viene gestito l'upload dell'immagine del profilo dell'utente.

La doc è: https://docs.moodle.org/dev/File_API_internals#pluginfile.php.

HTH,
Matteo