知っている方いましたらご教授お願いいたします。
■事象
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拡張モジュールがファイルアップロードを中止。
以上、ご回答のほどよろしくお願いいたします。
No.1ベストアンサー
- 回答日時:
var_dump(array_keys(preg_grep('/^15$/', get_defined_constants())));
上記のコードを用いて、エラーコード15を表す定数に何があるかどうか、そちらのPHP環境で調べてみてください。ideone.com上で調べてみたところ
・FORCE_DEFLATE
・ZLIB_ENCODING_DEFLATE
・XML_ELEMENT_DECL_NODE
・MHASH_TIGER160
・SIGTERM
・IMAGETYPE_WBMP
・SOCKET_ENOTBLK
・XML_ERROR_BINARY_ENTITY_REF
が存在していました。「SIGTERM」は強制終了を表すシグナルです。アップロード処理中にPHPコアで何らかのエラーが発生し、強制的に実行を中断させられた、と考えるのが妥当ではないでしょうか。もし古いバージョンのPHPを使ってる場合は最新版にアップデートしてください。
アップロードの例外処理に関してはこちらを参考にどうぞ。
http://qiita.com/mpyw/items/939964377766a54d4682
http://qiita.com/mpyw/items/73ee77a9535cc65eff1e
この回答への補足
To_aru_User様
いつもありがとうございます。
早速実行したところ以下のようになりました。
array(9) {
[0]=> string(13) "FORCE_DEFLATE"
[1]=> string(21) "ZLIB_ENCODING_DEFLATE"
[2]=> string(23) "CURLE_FTP_CANT_GET_HOST"
[3]=> string(21) "XML_ELEMENT_DECL_NODE"
[4]=> string(22) "DOM_INVALID_ACCESS_ERR"
[5]=> string(14) "MHASH_TIGER160"
[6]=> string(14) "IMAGETYPE_WBMP"
[7]=> string(14) "SOCKET_ENOTBLK"
[8]=> string(27) "XML_ERROR_BINARY_ENTITY_REF" }
PHPの環境はロリポップサーバーでバージョンは「5.4」になります。
例外処理を参考にさせていただきます!
ありがとうございます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP $filePath = './user_img/' . $file['name'];? 1 2022/12/10 07:29
- PHP どうして送信されないのでしょうか? 1 2022/12/09 05:23
- JavaScript clear機能を失わずにファイルアップロード機能を作成したい 3 2023/06/10 16:12
- HTML・CSS CSSが効かずどのように指定すれば良いか分からないのでアドバイスお願い致します 2 2023/06/07 12:25
- PHP PHP MySql 画像を取得 1 2022/06/04 14:05
- その他(プログラミング・Web制作) セレクトボックスで選択された値をコントローラーで使用したい 2 2022/07/26 16:41
- CGI htmlからパラメータで、cgiに渡したい。 1 2023/02/06 16:15
- PHP 画像ファイルの名前をそのままURLにする 3 2022/10/16 11:18
- PHP 'member_picture/'に/がありますが 、「スラッシュ」は必要でしょうか? 1 2022/11/27 04:32
- YouTube ユーチューブへの動画投稿にサムネイルを付ける方法は? 1 2022/07/21 23:45
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
onedrive にexcelファイルをア...
-
FTP接続の例外処理
-
youtubeに音声のみのmp4ファイ...
-
one drive のアップロード失敗...
-
ファイルアップロードの上限を...
-
全角ファイル名をアップロード...
-
ファイルアップロードしたもの...
-
画面遷移させずに、選択画像フ...
-
VBでクラウドストレージにア...
-
複数ファイルのアップロードに...
-
ファイルアップロードについて...
-
大容量のファイルアップロード...
-
PHP 画像アップロード 重複防止
-
ftpでアップロードが出来ない
-
ファイルをGET送信でアップロー...
-
ファイルのアップロードで、フ...
-
ファイルのアップロードを行う...
-
FTPClientで転送結果(OKかFAIL)
-
ファイルのアップロード$_FILES...
-
ガラケーサイトで写真のアップ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
onedrive にexcelファイルをア...
-
one drive のアップロード失敗...
-
youtubeに音声のみのmp4ファイ...
-
wixの使い方について
-
ftpでアップロードが出来ない
-
「クラウドにアップロード」」...
-
ファイルサイズがpost_max_size...
-
VBでクラウドストレージにア...
-
大容量のファイルアップロード...
-
画像ファイルの名前をそのままU...
-
どうして送信されないのでしょ...
-
ファイルアップロードの上限を...
-
PHPでxmlをAPIに送信する方法(P...
-
ファイルをGET送信でアップロー...
-
unlinkでどうしてもファイルが...
-
FTPClientで転送結果(OKかFAIL)
-
ファイルのアップロードでパス...
-
$filePath = './user_img/' . $...
-
FTP接続の例外処理
-
move_uploaded_fileについて
おすすめ情報