検索
ホームページphp教程php手册ダウンロード機能を実装するためのPHPコード

ダウンロード機能を実装するためのPHPコード

Jun 13, 2016 am 11:57 AM
phpダウンロードコード関数バイト成し遂げる

wzskynet#163.com
・phpscapeshellcmd マルチバイトエンコーディングの脆弱性
・PHP でのキャッシュ技術の適用の詳細な説明
・PHP V5 を使用したマルチタスクアプリケーションの開発
・詳細な分析PHP による MySQL Data Process への送信
・PHP での静的パブリッシングの方法についての簡単な説明
「ファイルのダウンロード」がこんなに簡単だと言う価値はあるでしょうか。もちろん、それはあなたが思っているほど単純ではありません。たとえば、顧客が特定のファイルをダウンロードする前にフォームに入力してもらいたい場合、最初に「リダイレクト」メソッドを使用する必要があります。まずフォームが入力され完了したかどうかを確認し、次に URL を指定する必要があります。たとえば、作成者が作成した次のコードを顧客がダウンロードできるようにします:

コード コードは次のとおりです:



// フォームが完全に入力されているかどうかを確認します...
if ($form_completed) {
Header("Location: http://www.jb51 .net/download/info_check.exe");
exit;
}
?>


または次の状況:

コードをコピー コードは次のとおりです:


ファイルのダウンロード開始


ここでは、ID メソッドを使用してダウンロードするファイルの番号を受け取り、「リダイレクト」メソッドを使用してファイルに接続します。実際のURL。

「オンライン ショッピング」に関する電子商取引 Web サイトを作成し、セキュリティの問題を考慮する場合、ユーザーが URL を直接コピーしてファイルをダウンロードすることを望まない場合、著者は PHP を使用することをお勧めします。実際のファイルを直接読み込んでからダウンロードしてください。プログラムは次のとおりです:

コードをコピーします コードは次のとおりです:


$file_name = "info_check.exe";
$file_dir = "/public/www/download/";
if (!file_exists($file_dir . $file_name)) { //ファイルが存在するかどうかを確認します
echo "ファイルが見つかりません";
exit;
} else {
$file = fopen($file_dir . $file_name,"r"); // ファイルを開く
// ファイルタグを入力してください
Header("Content-type : application/octet-stream");
Header("Accept-Range: bytes");
Header("Accept-Length: ".filesize($file_dir . $file_name) ));
Header( "Content-Disposition:attachment; filename=" . $file_name)
// 出力ファイルの内容
echo fread($file,filesize($file_dir . $file_name));
fclose($file) ;
exit;}
?>


ファイル パスが "http" または "ftp" URL の場合、ソース コードは手順は次のとおりです。

コードをコピーします。 コードは次のとおりです。


file_name = "info_check.exe";
$file_dir = "http://www.jb51.net/"
$file = @ fopen($file_dir . $file_name,"r"); if (!$file) {
echo "ファイル検索 以下";
} else {
Header("Content-type: application/octet-stream")
Header(" Content-Disposition:attachment; filename=" . $file_name);
while (!feof ($file)) {
echo fread($file,50000);
}
fclose ($file) );
}
?>


このようにして、PHP を使用してファイルを直接出力できます。


phpファイルの安全なダウンロードを実現!


コードをコピー コードは次のとおりです:

public function downloads($name){

$name_tmp =explode ("_ ",$name);
$type = $name_tmp[0]
$file_time =explode(".",$name_tmp[3]); ];
$file_date = date("Y/md",$file_time);
$file_dir = SITE_PATH."/data/uploads/$type/$file_date/"; !file_exists( $file_dir.$name)){
header("Content-type: text/html; charset=utf-8");
echo "ファイルが見つかりません!"; 🎜>} else {
$file = fopen($file_dir.$name,"r");
Header("Content-type: application/octet-stream"); Accept-Ranges: bytes ");
Header("Accept-Length: ".filesize($file_dir . $name));
Header("Content-Disposition:attachment; filename=".$name);
echo fread ($file, filesize($file_dir.$name));
fclose($file)
}
}


声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

PhpStorm Mac バージョン

PhpStorm Mac バージョン

最新(2018.2.1)のプロフェッショナル向けPHP統合開発ツール

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SecLists

SecLists

SecLists は、セキュリティ テスターの究極の相棒です。これは、セキュリティ評価中に頻繁に使用されるさまざまな種類のリストを 1 か所にまとめたものです。 SecLists は、セキュリティ テスターが必要とする可能性のあるすべてのリストを便利に提供することで、セキュリティ テストをより効率的かつ生産的にするのに役立ちます。リストの種類には、ユーザー名、パスワード、URL、ファジング ペイロード、機密データ パターン、Web シェルなどが含まれます。テスターはこのリポジトリを新しいテスト マシンにプルするだけで、必要なあらゆる種類のリストにアクセスできるようになります。