Загрузка файла форм symfony Проверка MS Word не работает - PullRequest
1 голос
/ 10 января 2011

Я использую Symfony 1.4 и Propel в качестве ORM.Я создал форму, используя форму Symfony, которая содержит некоторые текстовые входы и элементы загрузки файлов.Структура формы,

$this->setWidgets(array(
            'name'            =>new sfWidgetFormInput(),
            'mobile'          =>new sfWidgetFormInput(),
            'resume'          =>new sfWidgetFormInputFile()
    ));
$mime_array=array("application/pdf","application/msword");
$this->setValidators(array(
             'name'            =>new sfValidatorString(array('required' => true)),
             'mobile'          =>new sfValidatorAnd(array(new sfValidatorNumber(),new sfValidatorString(array('required' => true, 'min_length' => 10, 'max_length' => 10)))), 
             'resume'          =>new sfValidatorFile(array('mime_types' => $mime_array))
    ));

Но проверка загрузки файла не работает для файлов MS Word, но работает для файлов PDF (так как пользователь может загружать PDF или документ MS Word).

1 Ответ

2 голосов
/ 10 января 2011

Не совсем уверен, но я думаю, что новые документы Word 2007 Office требуют другого типа MIME:

application/vnd.openxmlformats-officedocument.wordprocessingml.document

(добавьте это в ваш массив для тестирования)

Я считаю, что другойдля более старых версий слов.

Вот некоторые связанные чтения: http://www.vladville.com/2007/04/office-2007-mime-types-for-apache.html

...