私はcakePHP2.xで簡単なアプリケーションを書いています。ユーザーがファイルをアップグレードしてダウンロードできるようにする必要があります。アップロードは正常に機能しますが、ダウンロードアクションでスタックします。
ダウンロードアクションを含むコントローラー名Documentsがあります。
public function download($id = null) {
$this->Document->recursive = -1;
$doc = $this->Document->find('first', array('conditions' => array('Document.id' => $id)));
$filename = $doc['Document']['file_file_name'];
$resp = new CakeResponse();
$resp->download(Configure::read('upload_dir').'upload'.DS.$id.'_'.$filename);
$resp->send();
}
はい、ファイルが存在するかどうかなどは確認していませんが、テスト用です。したがって、ダウンロードメソッドのパスは次のようになります。/home/www-app/upload/$id_$filename
もちろん、ファイルは存在し、両方のパスは同じです。
しかし、私はchromeから次のエラーを受け取りました:
Erreur 6 (net::ERR_FILE_NOT_FOUND) : File or Directory not found
$ resp-> file()メソッドを試しましたが、cakePHPはそのメソッドを知らないようです。
ありがとう!