Dans une forme Moodle j'effectuer un téléchargement de fichier en utilisant l'élément filemanager
:Moodle File API: plusieurs lignes?
$mform->addElement('filemanager', 'attachment',get_string('displayedcontent', 'block_helloworld'), null, $filemanageropts);
Une fois le formulaire validé, quand j'enregistrer mon exemple dans la base de données, j'enregistre également le fichier téléchargé en utilisant la fonction suivante:
file_save_draft_area_files($form_submitted_data->attachment, $context->id, 'block_helloworld', 'attachment',
$form_submitted_data->attachment, array('subdirs' => 0, 'maxbytes' => 500000, 'maxfiles' => 1));
Cela fonctionne très bien mais quand je regarde à la table DB mdl_files
, j'ai vu que pour mon dossier il y a 4 lignes:
component fileare itemid filepath filename
block_helloworld attachment 706783489 / .
block_helloworld attachment 706783489 / test5.pdf
user draft 706783489 / .
user draft 706783489 / test5.pdf
Il y a 2 lignes pour mon fichier téléchargé dans mon composant block_helloworld
et dans le composant user
. Une ligne a un nom de fichier mais pas l'autre!
Cela semble étrange. Est-ce normal? Lorsque j'effectue une suppression de fichier, comment supprimer tous ces fichiers?
Note: J'utilise moodle v3.0.6
Quelle version de Moodle utilisez-vous? –