PHP プログラムを作成する場合、PHP を使用してファイルをダウンロードする必要があります
それを実行し、コードをコピーして変更するだけです。
多くの効果が出てきました
ダウンロードをクリックした後、ファイルのダウンロードが完了したと思いましたが、画像を開くとファイルが破損していることが示されたので、ファイルのサイズを確認してみると、約 1KB でした。
PS で開くと、破損している旨のメッセージが出ますが、画像は出てきます。
そうすると、余分な 1kb の問題だと思います。
次に、テキストをアップロードしてダウンロードしました。
案の定、ファイルの前後にいくつかの余分な文字があることがわかりました。それらを削除する方法を考えています。Baidu、Google がフォーラムでさまざまな質問をしました。
1 時間以上検索した後、ついに解決策を見つけました。
コードは次のとおりです。以下に続きます
注:
public function download(){ $upload=M('upload'); $data=$upload->find($_GET['id']); if(empty($data)){ header('HTTP/1.0 404 Not Found'); header('Location: .'); }else{ $path='./public/Uploads/'.$data['savename']; header("Content-Type:".$data['type']); header('Content-Disposition: attachment; filename="'.$data['name'].'"'); header('Content-Length:'.$data['size']); ob_clean(); flush(); readfile($path); }}
これが重要です。これらの 2 つの機能を使用すると、画像は正常に開き、テキストは文字化けしません。
ob_clean();flush();