我想在使用JQUERY的PUT請求到PHP服務器的CHUNKS上傳文件。 我已經創建了可以上傳塊文件的代碼。使用PUT請求上傳多個文件上傳
<?php
$headerArray=getallheaders();
$filename="d/".$headerArray["filename"];
$length=$headerArray["Content-Length"];
/* PUT data comes in on the stdin stream */
echo "filename".$filename;
echo "Chunksize Uploaded:".$length;
$putdata = fopen("php://input", "r");
/* Open a file for writing */
$fp = fopen($filename, "a");
while ($data = fread($putdata, $length))
fwrite($fp, $data);
/* Close the streams */
fclose($fp);
fclose($putdata);
echo "FileSize After write : ".filesize($filename);
?>
在這裏,我能夠成功上傳塊的文件時,我被一個發送每個塊一個,並等待:當我嘗試讀取使用「//輸入PHP」它 但奇怪的事情是happenening代碼將該塊寫入文件。
但是,當我做併發上傳(不要等待第一個塊被寫入文件)..「php://輸入」中的數據似乎被下一個請求覆蓋。
我有doble檢查的JavaScript。所以問題是在PHP結束「我應該怎麼讀CHUNKS?」。
我已經通過以下鏈接等幾個環節了: http://php.net/manual/en/features.file-upload.put-method.php
有人可以幫助我瞭解如何PHP://輸入工作,當它收到
在同一時間多個請求..沒有數據被覆蓋或者數據在STDIN中被排隊?
你好Kunal ...這聽起來對我來說真的很奇怪。 Regulary STDIN不應該在多個請求之間共享(因爲這會導致完全混淆) – hek2mgl 2013-05-11 18:40:29