照会結果をカンマ区切りの値としてデータベースから返します。1,2,3..etc
次に、ダウンロード用のボタンを作成しようとしています。 1 idまたは複数である)。複数のドキュメントを持つLaravelのダウンロードボタン
だから、一つのファイルの付いたボタンは、クエリの戻り複数のIDのは、このようになります。この
<a href="users/files/download/2?_token=SivFIl3kKuflAvIyYJFGKdovJHTlqpjObN2nMFbQ">Download Now</a>
とボタンのように見えます(トークンの前に2,3
に気づく)
<a href="users/files/download/2,3?_token=SivFIl3kKuflAvIyYJFGKdovJHTlqpjObN2nMFbQ">Download Now</a>
この私がに追加routes.php
Route::get('/users/files/download/{fileId}', '[email protected]');
これをコントローラ
現在public function getDownload($fileId)
{
$file = Documents::findOrFail($fileId);
$file = public_path(). "/uploads/" . $file->document_path;
return Response::download($file, 'filename.pdf');
}
私は
を照らし\データベース\雄弁\ ModelNotFoundException持っているボタンをクリックしますどんなに:モデルなしクエリ結果[ドキュメント]。
これは何を意味しますか?モデルはそこにあります。これはドキュメントモデルです
class Documents extends Eloquent
{
protected $table = 'documents';
protected $primaryKey = 'id';
public $timestamps = false;
}
複数の場合、どのようにすべてのドキュメントIDを選択できますか?
更新:現在のコード
$file = Documents::findOrFail([$fileId]);
$zip = new ZipArchive();
$zip_name = time().".zip"; // Zip name
$zip->open($zip_name, ZipArchive::CREATE);
foreach ($file as $files) {
$path = public_path(). "/uploads/" . $files['document_path'];
if(file_exists($path)){
$zip->addFromString(basename($path), file_get_contents($path));
}
else{ echo"file does not exist"; }
}
$zip->close();
のために、アレイ内
$fileId
に合格する必要がありますが、これらのファイルのzipファイルを作成してダウンロードすることができます。 –