作者JoeHorn (獅子男)
看板PHP
標題Re: [PHP 5.2] Ajax File Uploads Progress Bar
時間Thu Nov 23 20:00:33 2006
※ 引述《kakashiliu (kakashi)》之銘言:
: 想請問一個問題...我在網路上搜索這些code
: 結果還是不太懂他們是怎麼取得暫存檔的大小
: 那個progress bar的長度應該是要用暫存檔的大小/原本檔案大小的Size吧?
: 想請問這個是怎麼做到的呢?
好問題!
請看
http://progphp.com/upload.phps 。
下面的 <form></form> 裡面被夾帶了一個新的變數:
<input type="hidden" name="APC_UPLOAD_PROGRESS" id="progress_key"
value="<?php echo uniqid()?>"/>
這個變數會交給最上面的這段處理:
if($_SERVER['REQUEST_METHOD']=='POST') {
$status =
apc_fetch('upload_'.$_POST['APC_UPLOAD_PROGRESS']);
$status['done']=1;
echo
json_encode($status);
exit;
} else if(isset($_GET['progress_key'])) {
$status =
apc_fetch('upload_'.$_GET['progress_key']);
echo
json_encode($status);
exit;
}
請注意標記顏色的那兩個 function 。
沒記錯的話, JSON 是在 5.2 才被預設而加進去的。
--
.╭═════╮。. o 。 . 。╭═╮o╭╮。. o 。 . o o . 。 ╰● √ 。
╰═╗ ╔═╯╭══╮╭══╮║▍║. ║║╭══╮╭╮。. ╭══╮ ◥██◤o
o 。║▍║。o║╭╮║║╭╮║║▍╚═╝║║╭╮║║╘═╮║╭╮║。 ◥◤ 。
。 ║▍║ 。 ║║║║║╰╯║║▍╔═╗║║║║║║╔═╯║║║║ o ∥ o .
。╭╯▃║o ║╰╯║║══╯║▃║。║║║╰╯║║║o。.║║║║. 。∥ . 。
╰══╯ ╰══╯╰══╯╰═╯ ╰╯╰══╯╰╯ ╰╯╰╯By meei0531
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 59.113.186.162
推 littlex:推這篇好文:) 11/24 08:45
推 ottokang:5.2加入JON沒錯 11/25 00:26
→ kakashiliu:感謝:) 11/25 22:25