PHPとMySQLを使用しており、デジタル電子書籍をオンラインで販売したいと考えています。電子書籍を購入するクライアントにダウンロードリンクを提供したいのですが、デジタルダウンロードリンクが3回だけ機能するように保護したいので、ダウンロードリンクは24時間後または3回のダウンロード試行後に自動的に削除されます。
この要件をどのように満たすことができますか。
デジタルダウンロードサービスを購入したくないので。自分で作りたい。
購入した時点で、一意の識別子を生成し、これをURLに組み込みます。
次に、そのURLにアクセスしたら、コードを検索し、コードがいつ作成され、何回使用されたかを確認し、それに応じてコンテンツまたはエラーを送信します。
これを拡張するには:
ユーザーがサイトにアクセスし、somecontent.txtを購入して、お金を支払います。次に、ランダムな文字列を生成し、次のようなリンクを提供します。
www.yoursite.com/download?content=somecontent.txt&authKey=fdkjhwsiufhwaoeuhfq
ここで、最後の文字列は、生成してDBに保存した文字列です。
しばらくして、購入者はリンクを使用します。その後、あなたのコードは'Aha!-そのコードは、ユーザーのフレッドがコンテンツを購入した結果として作成されました。彼の支払いが受け取られ、それが初めてダウンロードされたので、私は彼にファイルを送信し、その特定のユーザーがその特定のコードを使用した回数を記録するカウンターをインクリメントします。
最終的に、期限が切れるか、何度も使用されたために、コードは代わりに向きを変えて、「申し訳ありませんが、そのリンクは古すぎます/何度も使用されました」と表示されます...その時点で、たとえば、コンテンツを再購入します。その時点で、新しいコードを生成できます。