CakePHP просмотр файла через Media Views не работает - PullRequest
0 голосов
/ 14 марта 2012

У меня CakePHP 1.3, и у меня есть действие, которое должно просматривать файл, файл может быть .pdf, .doc, .... или любой документ, но вместо этого я получаю пустую страницу.

пример кода:

public function view_attachments($attachment_id){
        $attachment = $this->get_attachment($attachment_id);
        if($attachment){
            $path = pathinfo($attachment['EmailAttachment']['file']);
            $this->view = 'Media';
            $this->autoRender = false;
            $params = array(
                'id' => $path['basename'],
                'name' => $path['filename'],              
                'download' => false,
                'mimeType'=> $this->Common->get_mime_content_type($path['basename']),          
                'extension' => strtolower($path['extension']),  // must be lower case              
                'path' => APP . $path['dirname'] . DS   // don't forget terminal 'DS'       
            );       
            $this->set($params);
        }
    }

Есть идеи?Пожалуйста, сообщите.

Ответы [ 3 ]

0 голосов
/ 14 марта 2012

Проверка по моему собственному рабочему коду, единственное отличие, которое я вижу, это

$this->autoRender = false;

Конечно, у вас не должно быть файла "view_attachments.ctp".

Имейте в виду, что браузер не может открыть ".doc" изначально. Поэтому, даже если вы хотите, чтобы он отобразил его, он предложит вам загрузить его.

function download($id) {

    $data = $this->OdmPieceJointe->read(null, $id);
    $path = pathinfo($data['OdmPieceJointe']['fichier']);

    $this->view = 'Media';
    $params = array(
        'id' => $path['basename'],
        'name' => $path['filename'],
        'download' => false,
        'extension' => $path['extension'],
        'path' => 'uploads/',
        ); 

    $this->set($params);

}
0 голосов
/ 09 июля 2013

возможно:

Configure::write('debug', 0);
0 голосов
/ 14 марта 2012

проверьте, что файл media.ctp должен быть пустым ... для получения правильного вывода ... Спасибо

...