2016-09-23 3 views
1

こんにちは私はlaravelに慣れていて、まだそれを学んでおり、さまざまな問題や問題を抱えています。私は非常に長い間、これに固執してきました。どんな助けでも大歓迎です。は、ウェブサイト上で.docxドキュメントをアップロードすると空白のページを表示します。laravel

問題

私は私のウェブサイトへの.docxファイルをアップロードするたびに、私はエラーなしまたはそのDOCXファイルの内容ずに空白のページを取得します。私は問題が何であるか知りません。これで私を助けてください。私はこのための任意のビューを持っていけない

コード

public function getUploadedFile() { 

    // $destinationPath = 'uploads'; 
    // $path= public_path()."/". $destinationPath; 

    // $content = utf8_encode(File::get('/var/www/html/asad/File-Uploader/public/uploads/detailed_period_report_template.xls')); 
    // return view('/files', compact('path')); 


    $file = $this->request->file('file_name'); 
    $file_name = $this->request->file_name; 

    if (File::isFile($file_name)) 
    { 
     $file_name = File::get($file_name); 
     $response = Response::make($file_name, 200); 
     $content_types = [ 
      'application/octet-stream', // txt etc 
      'application/msword', // doc 
      'application/vnd.openxmlformats-officedocument.wordprocessingml.document', //docx 
      'application/vnd.ms-excel', // xls 
      'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet', // xlsx 
      'application/pdf', // pdf 
     ]; 
     // using this will allow you to do some checks on it (if pdf/docx/doc/xls/xlsx) 
     $response->header('Content-Type', 'application/vnd.openxmlformats-officedocument.wordprocessingml.document'); 

     return $response; 
    } 

。私はこれを必要としますか?すべてのdocxファイルにはフォント、サイズなどのプロパティが設定されているので、それが好きな場合は何が好きでしょうか?私を助けてください。あらかじめありがとうございます

+0

とはいえ、これは...ここに何か間違ったことかもしれないファイルをクリックする私の意見ですが、私はそう思ういけないが、念のために... '​​ {{ $upload['file_name'] }}' –

+0

は '他の{追加... } '' if(File :: isFile($ file_name){} 'の後ろにブロックがあり、ファイルが見つからないというエラー応答が返されます)エラーが返されたかどうかを確認してください(ファイルが存在しないことを意味します) – Matey

+0

あなたは 'else { Session :: flash(" message "、" File Not found "); リダイレクト(" \ home "); }' を返して、 "ファイルが見つかりません"と答えました –

答えて

0

私はずっと後にそれを理解しました。

"null"をファイル名として送信していたので、私が今行ったことは、ストレージではなくデータベースからファイル名を取得し、そのファイルがストレージとデータベースにある場合に比較しています。以下は今私のために走っているコードです。 あなたが

 $upload = new Upload; 

     $file= public_path(). "/uploads/" . $upload->file_name = $this->request->file_name; 
     //dd($file); 

     $files = File::get($file); 
     $response = Response::make($files, 200); 

かかわらず、すべてのあなたの助けのために@MATEYと$response->header('Content-Type', 'application/vnd.openxmlformats-officedocument.wordprocessingml.document');

にコンテンツタイプを変更ありがとうございすべてのヘルプ@MATEYいただきありがとうございます。あなたは私にそれを修正する動機を与えてくれました。の部分が見つからない場合は、ifの状態が実際に私がエラーを見つけるのを助けてくれました。

関連する問題