ユーザーに配布された一意のコードに基づいてファイルをダウンロードするための、オープンで事前に作成されたライブラリまたはその他のシステムはありますか?
ここでのアイデアは、各ユーザーが自分のコードを使用してファイルをダウンロードできるようにする一連のコードを生成することです。できれば、ダウンロード回数および/または制限時間のカスタマイズ可能な制限を使用してください。
そうでない場合は、これを実装する方法についての良いアイデアをいただければ幸いです。
これらのコードを生成するには、ランダムな文字列を生成する関数、または単純に PHP のネイティブ rand() 関数を使用できます。次に、生成したコードとそれに関連付けられたファイルの場所を特徴とするテーブルを db に作成します。
download.php ファイルは次のように呼び出す必要があります: download.php?hash=generated_code
そして、次のようになります。
<?php
// Retrieve filename and file location on the disk from the db
header('Content-disposition: attachment; filename='.$sql_response['filename']);
readfile($sql_response['filelocationondisk']);
?>
また、Cookie を使用したり、データベース内の IP ごとにダウンロードされた量をカウントしたりして、ダウンロード制限を制限することもできます。