2016-12-02 3 views
0

Ich habe kein Problem des Hochladen von Bildern, aber wenn ich versuchte Dokument wie pdf, doc oder xls zu laden, ich habe die folgenden FehlerSymfony 3 - FMElfinderBundle - Können Sie Dokumente hochladen andere als Bilder

Upload leider nicht möglich " Dokument.pdf ". Dateityp nicht

Meine Konfigurationsdatei

ivory_ck_editor: 
    default_config: default 
    configs: 
     default: 
      toolbar: standard 
      filebrowserBrowseRoute: elfinder 
      filebrowserBrowseRouteParameters: [] 

fm_elfinder: 
    #assets_path:/# default is /assets, this is where css/js elfinder files are 
    instances: 
     default: 
      locale: %locale% # defaults to current request locale 
      editor: ckeditor # other options are tinymce, tinymce4, fm_tinymce, form, simple, custom 
      #editor_template: custom template for your editor # default null 
      #path_prefix:/# for setting custom assets path prefix, useful for non vhost configurations, i.e. http://127.0.0.1/mysite/ 
      #fullscreen: true|false # default is true, applies to simple and ckeditor editors 
      #theme: smoothness # jquery theme, default is 'smoothness' 
      include_assets: true # disable if you want to manage loading of javascript and css assets manually 
      #visible_mime_types: ['image/png', 'image/jpg', 'image/jpeg'] # only show these mime types, defaults to show all 
      connector: 
       #debug: true|false # defaults to false 
       roots:  # at least one root must be defined, defines root filemanager directories 
        uploads: 
         #show_hidden: true|false # defaults to false, hides dotfiles 
         driver: LocalFileSystem 
         path: uploads 
         upload_allow: ['image/png', 'image/jpg', 'image/jpeg','text/txt', 'document/pdf', 'document/docx', 'document/xlsx'] 
         upload_deny: ['all'] 
         upload_max_size: 10M # also file upload sizes restricted in php.ini 

Ich habe Einstellung geändert upload_allow erlaubt.

Wie kann ich pdf-, doc- oder xls-Dateien hochladen?

Antwort

0

wenn diese Seite http://mime.ritey.com/ gefunden wird, die mir hilft, den Mime-Typ einer Datei herauszufinden. Wenn der Editor ein CKeditor ist, ist es nicht notwendig, upload_allow zu ändern, da er irgendeine Datei als Bild einfügt.

Wir haben eine Form Instanz hinzufügen mit Editor fm_elfinder: Form

fm_elfinder: 
    instances: 
     default: 
      locale: %locale% 
      editor: ckeditor 
      include_assets: true 
      connector: 
       roots:  
        uploads: 
         driver: LocalFileSystem 
         path: uploads 
         upload_allow: ['image/png', 'image/jpg', 'image/jpeg'] 
         upload_deny: ['all'] 
         upload_max_size: 10M 
     form: 
      locale: %locale% 
      editor: form 
      fullscreen: true 
      include_assets: true 
      connector: 
       debug: false 
       roots:  
        uploads: 
         driver: LocalFileSystem 
         path: uploads 
         upload_allow: ['image/png', 'image/jpg', 'image/jpeg', 'application/pdf', 'application/vnd.openxmlformats-officedocument.wordprocessingml.document', 'application/vnd.openxmlformats-officedocument.presentationml.presentation', 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'] 
         upload_deny: ['all'] 
         upload_max_size: 10M 

und ich fügen Sie den MIME-Typ von PDF, Word, Excel und Powerpoint-Dateien.

und die Form ist

use Symfony\Component\Form\Extension\Core\Type\DateType; 
use Symfony\Component\Form\Extension\Core\Type\FileType; 
use Symfony\Component\Form\Extension\Core\Type\TextType; 
use Ivory\CKEditorBundle\Form\Type\CKEditorType; 
use FM\ElfinderBundle\Form\Type\ElFinderType; 

class PublicationType extends AbstractType 
{ public function buildForm(FormBuilderInterface $builder, array $options) 
    { 
     $builder 
     ->add('title', TextType::class) 
     ->add('document', ElFinderType::class, array('instance'=>'form', 'enable'=>true)) 
     ->add('description', CKEditorType::class, array(
      'required' => false, 'empty_data' => null)) 
     ->add('content', FileType::class) 
     ->add('publicationDate', DateType::class, array(
       'years' => range(date('Y')-15, date('Y')) 
      )) 
     ; 
    } 

mit ElFinderType, ich

jede Art von Datei hochladen