0

現在、docx ファイルと pdf ファイルを、doc ルート外のユーザー アップロード フォルダーに保存しています。これらのファイルは、db リンクを介して、非常にスクランブルされたファイル名にダウンロードされる予定です。

以前は、PHP を使用してルート外のファイルからのみデータを取得していました。この領域からファイル全体を取得することは可能ですか。

4

2 に答える 2

1
<?php

$file_id = $_GET['id'];

$local_path = get_real_filelocation_from_id($file_id);

readfile($local_path);

のコードget_real_filelocation_from_id()は、OP の演習として残されています。

于 2012-07-09T15:24:49.700 に答える
0
<?php
$get_file=$_GET['file_name'];
$file = '/path/to/uploads/'.$get_file;

if (file_exists($file)) {
header('Content-Description: File Transfer');
header('Content-Type: application/octet-stream');
header('Content-Disposition: attachment; filename='.basename($file));
header('Content-Transfer-Encoding: binary');
header('Expires: 0');
header('Cache-Control: must-revalidate');
header('Pragma: public');
header('Content-Length: ' . filesize($file));
ob_clean();
flush();
readfile($file);
exit;
}
?>

何時間も検索した後、これが機能しているように見えました。残念ながら、シンボリック リンク ルートはたどるのに適したパスのように見えましたが、実際にそれを実装する方法がわかりません。最も基本的なスクリプトを試してみると、firebug は quirks モードになります。

于 2012-07-09T22:46:18.317 に答える