私はインターネット上で APC を調べてきましたが、ファイルのアップロードを検出するための気の利いた方法のようです。
しかし、私は問題を抱えています。
私は Ajax を使用してファイルとすべてを呼び出す方法を知っています。それが私が計画していることですが、テストのために、このようなことをしています。
わかりましたので、3つのファイルがあります。
form.php upload.php status.php
form.php には以下が含まれます。
<input type="hidden" name="APC_UPLOAD_PROGRESS" value="1234" />
<input type="file" id="fileIn" name="file" />
(APC_UPLOAD_PROGRESS で一意の ID を使用する必要があることは承知しています。繰り返しますが、これはテスト用です。)
さて、Upload.php には通常の PHP アップロード スクリプトがあります。
$origin = $_FILES['file']['name'];
if(move_uploaded_file(...etc...etc)...
そして Status.php は APC を使用します:
$upload = apc_fetch('upload_1234');
if ($upload) {
if ($upload['done'])
$percent = 100;
else if ($upload['total'] == 0)
$percent = 0;
else
$percent = $upload['current'] / $upload['total'] * 100;
echo $percent;
}
今私がやっていることは、通常の HTTP メソッドを使用してファイルをアップロードし、別のウィンドウを使用して Status.php を監視することです。
問題は; Status.php は何も返しません!
ただし、 print_r(apc_fetch('upload_1234')); と書くと
upload.php に入力すると、すべての詳細などを含む正しい配列が返されます。
私は何を間違っていますか?
ありがとう。