jquery.MultiFile.jsで5GBのファイルをアップロードする方法

このQ&Aのポイント
  • jquery.MultiFile.jsを使用して5GBのファイルをアップロードする方法を教えてください。
  • 現在、jquery.MultiFile.jsを使用してファイルのアップロードを試みていますが、5GBのファイルでは失敗してしまいます。
  • ファイルサイズの上限を設定する方法や、アップロードに成功するための修正方法についてアドバイスをお願いします。
回答を見る
  • ベストアンサー

jquery.MultiFile.jsで5GB

お世話になります。 jquery.MultiFile.jsを使って5GBのファイルをアップロードしたいのですが、5GBどころか10MB程度のファイルでもアップロードに失敗してしまいます。 数KB程度のファイルではアップロードに成功するので基本的なコードは間違っていないと思うのですが、どこかにファイルサイズの上限を設定する項目があるのでしょうか? WEBサーバーはクリーンインストールしたCentOS5.5のサーバーとサクラサーバーで試しましたがどちらも同じ現象でした。 入力ページでファイルを指定し、確認ページでアップロードしたファイルを確認しているのですが、確認ページでvar_dump($_FILES);を実行したところ、大きなファイルだと何も渡ってきません。 小さいファイルですと <参考>のような結果が得られます。 どの辺を直せばいいのかアドバイスをお願いします。 <参考> array(1) { ["upfile"]=> array(5) { ["name"]=> array(1) { [0]=> string(5) "a.zip" } ["type"]=> array(1) { [0]=> string(28) "application/x-zip-compressed" } ["tmp_name"]=> array(1) { [0]=> string(14) "/tmp/phpV8T91h" } ["error"]=> array(1) { [0]=> int(0) } ["size"]=> array(1) { [0]=> int(1244) } } }

質問者が選んだベストアンサー

  • ベストアンサー
noname#212058
noname#212058
回答No.1

var_dump($_FILES); ということは、サーバ側は PHP ですね。 PHP はアップロードするファイルの容量に制限があります。 その制限に引っかかっているのでしょう。 変更方法は以下のページを見てください。

参考URL:
http://pentan.info/php/post_max_size.html
miruha2011
質問者

お礼

ありがとうございます。 解決できました!

関連するQ&A

  • PHPでファイルアップローダー

    PHPでファイルアップローダーを作成しましたが、サイズの大きなファイルがアップロードできなくて困っています。 具体的には、900MBのファイルアップロードはできますが、1.4GBになるとアップロードできていません。 設定値は下記のようにし、十分にとっているつもりです。なお、HTMLで表示した実際に使われている設定値です。 <?php echo 'memory_limit = ' . ini_get('memory_limit') . "<br />"; echo 'post_max_size = ' . ini_get('post_max_size') . "<br />"; echo 'upload_max_filesize = ' . ini_get('upload_max_filesize') . "<br />"; echo 'max_execution_time = ' . ini_get('max_execution_time') . "<br />"; echo 'max_input_time = ' . ini_get('max_input_time') . "<br />"; ?> ↓ memory_limit = 5120M post_max_size = 5120M upload_max_filesize = 5120M max_execution_time = 300 max_input_time = 300 $_FILEを確認すると、下記のようにファイル名以外空となっています。エラーコードが0で正常アップロードの判定になっているので、原因が分からず困っています。 array(1) { ["upfile"]=> array(5) { ["name"]=> array(5) { [0]=> string(24) "testfile.ISO" [1]=> string(0) "" [2]=> string(0) "" [3]=> string(0) "" [4]=> string(0) "" } ["type"]=> array(5) { [0]=> string(0) "" [1]=> string(0) "" [2]=> string(0) "" [3]=> string(0) "" [4]=> string(0) "" } ["tmp_name"]=> array(5) { [0]=> string(0) "" [1]=> string(0) "" [2]=> string(0) "" [3]=> string(0) "" [4]=> string(0) "" } ["error"]=> array(5) { [0]=> int(2) [1]=> int(4) [2]=> int(4) [3]=> int(4) [4]=> int(4) } ["size"]=> array(5) { [0]=> int(0) [1]=> int(0) [2]=> int(0) [3]=> int(0) [4]=> int(0) } } } アドバイスいただければ幸いです。

    • 締切済み
    • PHP
  • jQuery複数ファイルアップロード

    お世話になります。 jQuery Multiple File Upload Pluginを使って複数のファイルをアップロードしたいですがサーバー側でどのように受けたら良いか分からず困っています。 次のコードですと、アップロードするファイルが1個なら問題ないのですが、複数あるとに2番目以降のファイルの指定方法が分かりません。 http://javascript.webcreativepark.net/library/jquery_multiple_file_upload_pluginではname="upfile"が書かれておらずfile1[]、file2[]と読めると書いてあったのですができませんでした。 【html側】 <input type="file" name="upfile" class="multi" maxlength="5"/> 【サーバー側】※PHP print_r ( "アップロードファイル名 : " . $_FILES["upfile"]["name"] . "<BR>"); print_r ( "MIMEタイプ : " . $_FILES["upfile"]["type"] . "<BR>"); print_r ( "ファイルサイズ : " . $_FILES["upfile"]["size"] . "<BR>"); print_r ( "テンポラリファイル名 : " , $_FILES["upfile"]["tmp_name"] . "<BR>"); print_r ( "エラーコード : " . $_FILES["upfile"]["error"] . "<BR>");

    • ベストアンサー
    • PHP
  • PHPでのファイルアップロード。リネーム機能実装

    インターネット上でフリーで配布されていたPHPスクリプトです。 <?php if (is_uploaded_file($_FILES["upfile"]["tmp_name"])) { if (move_uploaded_file($_FILES["upfile"]["tmp_name"], "files/" . $_FILES["upfile"]["name"])) { chmod("files/" . $_FILES["upfile"]["name"], 0644); echo $_FILES["upfile"]["name"] . "をアップロードしました。"; } else { echo "ファイルをアップロードできません。"; } } else { echo "ファイルが選択されていません。"; } ?> --- files フォルダにファイルをアップロードするのですが このままアップロードすると、同じファイル名でアップした場合ファイルが上書きされてしまいます。 アップロードした時、[お腹すいた.zip] だった場合、[20120808-1958-お腹すいた.zip]のように 時間と日付を入れたいのですが、私の知識では調べて試してみたのですが、白紙になる限りで うまくいきません。 どなたかご教授頂けませんでしょうか。

    • ベストアンサー
    • PHP
  • zip圧縮の種類について

    phpで趣味のコーディングをしています。 あるフリーのモジュールをうまく使えなくて困っています。 そのモジュールでは、zip圧縮したファイルをアップロードするところがあるのですが、 $_FILES["upfile"]["type"] が application/zip でないと受け付けてくれません。 しかし、私の環境では、何でzip圧縮しても(lhaz、7zip、WinXPデフォルト機能の3つでzip圧縮を試行)、 $_FILES["upfile"]["type"] は application/x-zip-compressed になってしまいます。 質問は2つあります。 1. application/x-zip-compressed と application/zip は、それぞれどんな圧縮形式なのでしょうか。 2. application/x-zip-compressed のファイルを、 application/zip に変換する方法は無いでしょうか。 以上です。 ご回答よろしくお願い致します。

    • ベストアンサー
    • PHP
  • ファイルのアップロード$_FILESデータの取得方法

    php.iniのregister_globals=offに設定したときのファイルのアップロード で$_FILESのデータがうまく取得できません。 []_FILES .[]userfile = Array ..[]size = Array ..[]name = Array ..[]tmp_name = Array ..[]type = Array 取得したいデータはsize.name.tmp_name.typeです。 よろしくお願いいたします

    • ベストアンサー
    • PHP
  • ファイルのアップロード処理を確認画面で確認後にアップロードするようにし

    ファイルのアップロード処理を確認画面で確認後にアップロードするようにしたいのですが、プログラムの書き方がわかりません。確認画面を通さずにやればアップロードできるのですが。どうすればいいのか教えてもらえるとうれしいです。 流れとしては「アップロード画面でファイルを指定」→「確認画面でアップロードボタンを押す」→「アップロード結果画面」です。作成中のソースは以下のようになっています。 ■upload.html(アップロード画面) <html><head><title>アップロード画面</title></head><body> <form action="kakunin.php" method="post" enctype="multipart/form-data"> ファイル:<br> <input type="file" name="upfile" size="30"><br> <input type="submit" value="確認画面へ"> </form></body></html> ■kakunin.php(確認画面)<未完成> <html><head><title>確認画面</title></head><body> <?php $upfile=$_POST['upfile']; print "選択したファイル: $upfile<br>\n"; ?> <br>この内容でよろしいですか?<br> よろしければ「アップロード」ボタンを押してください。<br> <form action="uploadkekka.php" method="post" enctype="multipart/form-data"> <input type="submit" value="アップロード"> </form></body></html> ■uploadkekka.php <html><head><title>アップロード結果</title></head><body> <p><?php if (is_uploaded_file($_FILES["upfile"]["tmp_name"])) { if (move_uploaded_file($_FILES["upfile"]["tmp_name"], "uploadfiles/" . $_FILES["upfile"]["name"])) { chmod("uploadfiles/" . $_FILES["upfile"]["name"], 0644); echo $_FILES["upfile"]["name"] . "をアップロードしました。"; } else { echo "ファイルをアップロードできませんでした。"; } } else { echo "ファイルが選択されていません。"; } ?> </p></body></html>

    • ベストアンサー
    • PHP
  • 【PHP】postで連想配列のキーを送信したい

    PHP初心者です。 (実は似たような質問を以前yahoo知恵袋さんで投げた者です) ファイルのアップロードフォームを作っています。 まず、セレクトボックスを作り、セレクトボックスで選んだ値によって、 アップロード先を分けたいと思っています。 セレクトボックスで「理科」を選んでアップロードしたファイルは フォルダ「001」に、セレクトボックスで「数学」を選んでアップロードした ファイルはフォルダ「002」に入る、いう具合です。 セレクトボックスを連想配列を使って作り、 フォルダ分けは連想配列のキーの値を使うことによって解決しようとして 下のように作ってみたのですがうまくいきません。 どうすればよいでしょうか? よろしくお願いします。 **アップロードフォーム** <select name="subjects" id="subjects"> <?php $subjects = array('001'=>'理科','002'=>'数学','003'=>'英語'=>'); foreach ($subjects as $subject) { print('<option value="'.$subject.'">'.$subject.'</option>'); } ?> </select> <form action="./upload.php" method="post" enctype="multipart/form-data"> <input type="file" name="upfile" size="30px"/><br/> <input type="file" name="upfile" size="30px"/><br/> <input type="file" name="upfile" size="30px"/><br/> <button type="submit"> 送信</button> </form> **受信側** <?php $subjects = array('001'=>'理科','002'=>'数学','003'=>'英語'=>'); $keyNum = array_search($_POST['subjects'], $subjects); if( isset( $_FILES["upfile"] ) ) { foreach( $_FILES["upfile"]["error"] as $key => $error ) { if( $error == UPLOAD_ERR_OK ) { $tmp_name = $_FILES["upfile"]["tmp_name"][ $key ]; $name = $_FILES["upfile"]["name"][ $key ]; if (move_uploaded_file($tmp_name, "$keyNum/" . $name)); { echo $_FILES["upfile"]["name"] . "アップロード完了"; } } } } ?>

    • ベストアンサー
    • PHP
  • 画像アップ

    php初心者です 簡単な画像アップロードを付けたいと思っています それでアップだけはなんとかできたのですが、もう少し機能を付けたいです 付けたい機能は 1.拡張子を調べて限定したい。gif、jpg、pngの三つを許可したい 2.画像の横と縦の幅が指定した幅より大きければ、指定した幅まで縦横比維持で縮小 100*100 3.もう一つのディレクトリに、小さいサムネイルを作りたい。大きさは32*32です 4.拡張子はそのままにして画像の名前をリネームしたいです よろしくお願いします(_ _ <?php $img_name = $_FILES["upfile"]["name"]; $img_size = $_FILES["upfile"]["size"]; $img_type = $_FILES["upfile"]["type"]; if($_REQUEST["up"] != ""){ if($img_tmp != "" and $img_size <= 50000){ $img_message = "名前は: $img_name <br>サイズは: $img_size <br>MIMEタイプは: $img_type"; if (is_uploaded_file($_FILES["upfile"]["tmp_name"])) { if (move_uploaded_file($_FILES["upfile"]["tmp_name"], "files/" . $_FILES["upfile"]["name"])) { chmod("files/" . $_FILES["upfile"]["name"], 0604); print $_FILES["upfile"]["name"] . "をアップロードしました。"; } else { print "ファイルをアップロードできません。"; } } else { print "ファイルが選択されていません。"; } }else{ $size_error = "サイズが大きすぎます"; } } ?> <html> <head> <title>画像アップロード</title> </head> <body> <form name="form" action="" method="POST" ENCTYPE="MULTIPART/FORM-DATA"> <input name="upfile" type="file" size="40"> <input name="up" type="submit" value="アップロード"><hr> </form> <?php print($size_error); ?><?php print($img_message); ?> </body> </html>

    • ベストアンサー
    • PHP
  • 教えてください。

    フォームからファイルアップロードに関してですが <input type="file" name="upfile"> の場合は $HTTP_POST_FILES["upfile"]["tmp_name"] になりますが <input type="file" name="upfile["img"]"> の場合は どのようになりますか?

    • 締切済み
    • PHP
  • $_FILES['x']['error']について

    知っている方いましたらご教授お願いいたします。 ■事象 PHPにて画像ファイルのアップロードを作っています。 その際に、「jpg」なのに、アップロードできない画像ファイルがあります。 以下の、メッセージを取得する際には【15】が戻り値として返ってきます。 ⇒$error = $_FILES['x']['error']; エラー一覧をみても【15】というのは存在していないようで、 何が原因なのかがよくわかっていません。 ■ファイルをvar_dumpしたところ var_dump($_FILES['x']); ⇒出力結果 array(5) { ["name"]=> string(8) "attt.jpg" ["type"]=> string(0) "" ["tmp_name"]=> string(0) "" ["error"]=> int(1) ["size"]=> int(0) } そもそも取得できていない・・・ ■原因と思われるもの?? UPできない、画像のプロパティを見てみると 詳細の色の表現が「sRGB」となっています。 これが原因でしょうか? ■ファイルアップロードに関するエラーコード。 0: エラーなし。ファイルアップロード成功。 1: ファイルサイズが、「php.ini」の「upload_max_filesize」の値を超えている。 2: ファイルサイズが、送信フォームで指定した「MAX_FILE_SIZE」の値を超えている。 3: 一部しかアップロードされなかった。 4: アップロードされなかった。 6: テンポラリフォルダがない。 7: ディスクへの書き込みに失敗。 8: PHP拡張モジュールがファイルアップロードを中止。 以上、ご回答のほどよろしくお願いいたします。

    • ベストアンサー
    • PHP

専門家に質問してみよう