2017-07-21 1 views
0

Je travaille actuellement sur Moodle et j'essaye de télécharger une image et de l'afficher. J'ai suivi toutes les étapes expliquées ici: https://docs.moodle.org/dev/Using_the_File_API_in_Moodle_forms#Simple_use et cela fonctionne. Par exemple, si je télécharge un fichier avec du texte et que j'accède à l'URL fournie par la fonction make_pluginfile_url, le texte qui est à l'intérieur du fichier est affiché.Moodle File API télécharger une image

Le problème est quand je télécharge une image, il ne montre pas l'image, mais un texte comme celui-ci:

(+�ء��\U�k���*�j~�Uܽ�U���W\Uت�k��zb��S� 

Je suppose que c'est parce que l'API File traite l'image en tant que fichier texte et non comme .jpg

Quelqu'un pourrait me dire comment je pourrais faire afficher l'image?

+0

Je ne sais pas pourquoi, mais il fonctionne maintenant ... je ne fais rien –

Répondre

1

L'afficher avec la classe html_writer. Exemple:

html_writer :: empty_tag ('img', array ('src' => $ url)); Où $ url est une URL valide dans votre fichier. (Préparé avec moodle_url :: make_pluginfile_url() ou similaire)

empty_tag docs

+0

Salut, merci pour votre réponse, je l'ai essayé d'afficher avec html_writer comme vous l'avez dit mais cela ne semble pas fonctionner. Il affiche le logo de l'image brisée. –

+1

puis vérifiez si l'URL générée pour votre image est correcte. Si vous collez dans votre navigateur, cela devrait vous mener à cette image. Le modèle d'une telle URL ressemblerait à ceci: yoursite.com/pluginfile.php/contextid/component/filearea/filename.jpg – Dootz

+0

Ouais je l'ai déjà fait, mon URL est générée avec make_pluginfile_url() mais quand je vais à la page il affiche un texte étrange comme celui-ci: (+ ء \ U k * j ~ U ܽ U W \ U ت k zb S –