2011-10-28 23 views
0

私はhtml5ドラッグアンドドロップアップロード機能を持つページを持っていて、そのファイルはPUTメソッドを使用してアップロードしています。大きな画像ファイルをアップロードすると、画像の一部のみがサーバに保存されます。ファイルを保存するには、次のPHPコードを使用してくださいPUTメソッドで大きなファイルをアップロード

$putdata = fopen("php://input", "r"); 
    $fp = fopen("/tmp/myputfile" . microtime() . ".jpg", "w"); 

    while ($data = fread($putdata, 1024)) 
     fwrite($fp, $data); 

    fclose($fp); 
    fclose($putdata); 

何か問題がありますか?助けてください

答えて

2

私はファイル全体がまだ完全にアップロードしようとするとアップロードされていないと思うので、時々あなたに0バイトの読み込みが返されます。しかし、まだデータがアップロードされている可能性があります。

feof関数を使用して読み込むデータがあるかどうかを確認できますか?

Windowsである場合は、関数fopenのモードパラメータに「b」を追加する必要があります

0

を「http://www.php.net/manual/en/function.feof.php」を参照してください。 ()。 manual BTWを参照してください。コード移植性のためにパラメータを追加するのは良い考えです...

関連する問題