• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:files関数配列取得について)

files関数配列取得について

このQ&Aのポイント
  • files関数配列取得についてのエラーが発生しています。
  • エラーの原因は未定義のインデックスと配列キーの警告です。
  • ソースコードの目的はpostで送られてきたファイルを連想配列として取得することです。

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

  • ベストアンサー
  • mpx
  • ベストアンサー率71% (149/209)
回答No.2

素直にエラーメッセージを読めば何がおかしいのかは分かるのでは? >> Notice: Undefined index: 配列のインデックスが未定義ですといっています。 "$jisseki_img" をキーにした配列が無いのが原因です >> Warning: array_keys(): The first argument should be an array array_keys関数の引数は配列でなければならないのですが、 前のNoticeより、$_FILES["$jisseki_img"]が無いので引数が配列では無くヌルになっているためです >> Notice: Undefined index >> Warning: array_values(): The argument should be an array 上記も同様です。 つまり、正しい名前でファイルがアップロードされていないか、あるいは、$jisseki_img に正しい値が設定されていないということです。 開示されている範囲ではここまでしか判断できませんが、 アップロード側と $jisseki_imgに正しい値が入っているかチェックしましょう。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (1)

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.1

foreachで処理してみては?

prunote
質問者

補足

ごめんなさい。 初心者なのでforeachの使い方がわからず、for文でやろうと考えています。 もし、参考になるサイトなどがありましたら、それを見ながらやります。 ありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • クラスと文法とエラー。なぜこの出力

    <?php $chk = new nanikore(); class nanikore{ var $queryY; var $queryZ; function nanikore(){ $this->$queryY = array( "name" => "test1"); $this->$queryZ = array( "name"=> "test2" ); print_r( $this->$queryY ); } } ?>この実行結果が以下になるのはなぜですか?orz 特に以下の部分が理解できません Array ( [name] => test2 ) こうなるつもりなのですが・・・。Noticeエラーのせいなのでしょうか あとなぜノーティスエラーがでるのでしょうか。。よろしくお願いします Array ( [name] => test1 ) //////////////////////////////////////////////////////////// Content-type: text/html X-Powered-By: PHP/4.3.6 <br /> <b>Notice</b>: Undefined variable: queryY in <b>F:\nanikore.php</b> on line <b>8</b><br /> <br /> <b>Notice</b>: Undefined variable: queryZ in <b>F:\nanikore.php</b> on line <b>9</b><br /> <br /> <b>Notice</b>: Undefined variable: queryY in <b>F:\nanikore.php</b> on line <b>10</b><br /> Array ( [name] => test2 )

    • ベストアンサー
    • PHP
  • Openpneを導入したけどエラー

    Warning: array_map() [function.array-map]: Argument #2 should be an array in /home/users/1/サイト名/web/openpne/webapp/lib/util/util.php on line 666 Warning: array_keys() [function.array-keys]: The first argument should be an array in /home/users/1/サイト名/web/openpne/webapp/lib/util/util.php on line 667 Warning: Invalid argument supplied for foreach() in /home/users/1/サイト名/web/openpne/webapp/lib/util/util.php on line 668 Warning: Cannot modify header information - headers already sent by (output started at /home/users/1/サイト名/web/openpne/webapp/lib/util/util.php:666) in /home/users/1/サイト名/web/openpne/webapp/lib/OpenPNE/Smarty.php on line 115 Warning: array_map() [function.array-map]: Argument #2 should be an array in /home/users/1/サイト名/web/openpne/webapp/lib/util/util.php on line 666 Warning: array_keys() [function.array-keys]: The first argument should be an array in /home/users/1/サイト名/web/openpne/webapp/lib/util/util.php on line 667 Warning: Invalid argument supplied for foreach() in /home/users/1/サイト名/web/openpne/webapp/lib/util/util.php on line 668 という感じでOpenpneのログイン画面でエラーが出てきたのですが どうしたら良いでしょうか?

  • コードエラーが次のように出てしまいます。

    Notice: Undefined offset: 2 in C:\xampp\htdocs\news2.php on line 18 Warning: file_get_contents(): Filename cannot be empty in C:\xampp\htdocs\news2.php on line 19 プログラミング超初心者です。var_dumpしてみてもarray[2]は存在していたのですが・・・。 なぜこのようなエラーが出るのか、またどのように解決すればよいのでしょうか。わかる方、教えてください。よろしくお願いします。 <?php $newstop="http://headlines.yahoo.co.jp/hl"; $html=file_get_contents($newstop); $patern1='/http.*c=bus/'; preg_match($patern1,$html,$matches1); //var_dump($matches1); $newstop2=($matches1[0]); $html2=file_get_contents($newstop2); //echo($html2); //ここから、記事全文を拾う $fullpattern='/http.*all/'; preg_match_all($fullpattern,$html2,$matches3); $fullurl=($matches3[2]); ※ここが18行目 $fulltext=file_get_contents($fullurl);       ※ここが19行目 echo ($fulltext); //var_dump($matches3); ?>

    • 締切済み
    • PHP
  • 「CGIモード」から「モジュールモード」のサーバーに移したら動きません

    「CGIモード」から「モジュールモード」のサーバーに移したら動きません。 すみません。お願いします。エラーログは下記です。 PHP Notice: Undefined variable: page in /var/www/vhosts/example.com/httpdocs/db/connect.inc on line 141 PHP Notice: Undefined variable: search_param in /var/www/vhosts/example.com/httpdocs/db/connect.inc on line 152 PHP Notice: Undefined variable: inq_param in /var/www/vhosts/example.com/httpdocs/db/connect.inc on line 152 PHP Notice: Undefined variable: did_param in /var/www/vhosts/examplee.com/httpdocs/db/connect.inc on line 152 PHP Notice: Undefined variable: search_flg in /var/www/vhosts/example.com/httpdocs/db/connect.inc on line 152 PHP Warning: fsockopen() [<a href='function.fsockopen'>function.fsockopen</a>]: php_network_getaddresses: getaddrinfo failed: Temporary failure in name resolution in /var/www/vhosts/example.com/httpdocs/db/connect.inc on line 156 PHP Warning: fsockopen() [<a href='function.fsockopen'>function.fsockopen</a>]: unable to connect to www.example.jp:80 (Unknown error) in /var/www/vhosts/example.com/httpdocs/db/connect.inc on line 156 変数に値が入らず、必要なアドレス?が引っ張れず、相手(www.example.jp)とやり取りできない・・・的なエラーでしょうか。 フリーのDB(www.example.jp)をコチラ(example.com/db/)に表示させるやり取りは下記です。 ・detail.php ・index.php ・inquiry.php また記述は共に同様で下記となります。 <?php $param = '発行されたパラメータ'; $charset = 'shift-jis'; $gflg=false; $to_file = '自身のファイル名'; include ("connect.inc"); ?> サーバー環境の話で、お門違いかもしれませんが、助けていただければと思い書き込みます。

    • ベストアンサー
    • PHP
  • function()を初めて使いました。エラー。

    かなり初歩的な質問をさせていただきます。 初めてfunction関数を使ったのですが、下記のようなエラーが出ました。 Warning: array_reverse() [function.array-reverse]: The argument should be an array in E:\Web\Chat2\chat\logpage.php on line 99 Warning: array_reverse() [function.array-reverse]: The argument should be an array in E:\Web\Chat2\chat\logpage.php on line 100 Warning: array_reverse() [function.array-reverse]: The argument should be an array in E:\Web\Chat2\chat\function.php on line 38 Warning: flock() expects parameter 1 to be resource, boolean given in E:\Web\Chat2\chat\function.php on line 41 Warning: fputs(): supplied argument is not a valid stream resource in E:\Web\Chat2\chat\function.php on line 48 Warning: flock() expects parameter 1 to be resource, boolean given in E:\Web\Chat2\chat\function.php on line 49 Warning: fclose(): supplied argument is not a valid stream resource in E:\Web\Chat2\chat\function.php on line 50 チャットを作っていて、何度も使う文をfunctionでまとめて、別ファイルに保存し、 requireで呼び出して、str();で使うとこうなりました。 function load(){ $log_data = "./data/log".$_GET['id'].".cgi"; $log_file = file($log_data); $member_data = "./data/member".$_GET['id'].".cgi"; $member_file = file($member_data); } このような形で使っているのですが、何かfunctionを使うにあたって注意などがあれば教えていただけませんか?

    • 締切済み
    • PHP
  • 多次元配列をエンコードする関数を作るには?

    多次元配列でも文字コードのエンコードができる関数を 作ろうとしていますが、エラーで躓いています。 自分自身の関数を再帰で呼び出しているので、array_map関数上? 引数が1つしか持てないので、$valueを array($ary, "SJIS", "EUC-JP")として渡しています。 これを実行すると、以下のエラーになります。 何かよい方法はありますか? PHP Notice: Undefined offset: 0 in C:\test.php on line 10 function mb_convert_encoding_deep($value) { //var_dump($value); if( is_array($value) ){ if( is_array($value[0]) ){ array_map(__FUNCTION__, $value); }else{ $value[0] = mb_convert($value[0], $value[1], $value[2]); } }else{ die("ここは通過しないと思いますが自信なし"); } return $value; } $ary = mb_convert_encoding_deep( array($ary, "SJIS", "EUC-JP") ); array_mapの用法でも間違っているのでしょうか?

    • ベストアンサー
    • PHP
  • JavascirptかPHPでコメントフォーム

    http://qitailang.small.jp/webtech/commentbox/commentform.html このサイトのコメントフォームを使おうと思っているのですが 行き詰っています。 アパッチのhtdocsの直下にフォルダを置き、 フォルダ名をcommentform_modifiedとしてその下にsample.htmlを置き さらにその下に commentform commentform.php commentform.js commentform.css commentfiles としました。今の所パーミッションというのは触っていません。 元々このサイトとは違う練習用のPHPファイルはうまくいっています。ただ今回、 http://localhost/commentform_modified/sample.htmlとして実行した所PHPのエラーが出ています。 Notice: Use of undefined constant file - assumed 'file' in C:\Program Files\Apache\Apache24\htdocs\commentform_modified\commentform\commentform.php on line 17 Notice: Use of undefined constant cmd - assumed 'cmd' in C:\Program Files\Apache\Apache24\htdocs\commentform_modified\commentform\commentform.php on line 21 Notice: Undefined index: cmd in C:\Program Files\Apache\Apache24\htdocs\commentform_modified\commentform\commentform.php on line 21 Notice: Use of undefined constant cmd - assumed 'cmd' in C:\Program Files\Apache\Apache24\htdocs\commentform_modified\commentform\commentform.php on line 57 Notice: Undefined index: cmd in C:\Program Files\Apache\Apache24\htdocs\commentform_modified\commentform\commentform.php on line 57 まず17行目から21行目辺りですが $commentdir = 'http://localhost/commentform_modified/commentform'; /*--------------------------------------------*/ $Comment = array(); if (!is_dir($commentdir)) mkdir($commentdir); if ($_REQUEST[file] && is_file("$commentdir/$_REQUEST[file].dat")) { $a=1; $Comment = file("$commentdir/$_REQUEST[file].dat"); } if ($_REQUEST[cmd] == 'commentRegist') { としています。 57行目は } elseif ($_REQUEST[cmd] == 'delete') { となっています。 双方とも何がいけないんでしょうか?

    • ベストアンサー
    • PHP
  • 配列のデータを受け取る、のバグ

    PHPスーパーサンプル第2版の2-3/rcvarray.phpからの抜粋です。 <html> <head> <title>配列のデータを受け取る</title> </head> <body> <?php <?php $array = array("menu"=>"カレー", "price"=>"380", "date"=>"2005/01/01"); echo "配列の内容(エンコードした場合)"; print_r(unserialize(base64_decode($_POST["ar_enc"]))); echo "<p>配列の内容(そのまま渡すと失敗)"; print_r($_POST["ar"]); ?> <form method="POST" action="<?php echo $_SERVER["PHP_SELF"]?>"> <input type="submit" value="送信" name="sub1"> <input type="hidden" name="ar" value="<?php echo $array ?>"> <input type="hidden" name="ar_enc" value="<?php echo base64_encode(serialize($array)) ?>"> </form> </body> </html> を実行すると、 配列の内容(エンコードした場合): Notice: Undefined index: ar_enc in /UNIONFS/opt/lampp/htdocs/samples/chapter2/2-3/rcvarray.php on line 14 配列の内容(そのまま渡すと失敗): Notice: Undefined index: ar in /UNIONFS/opt/lampp/htdocs/samples/chapter2/2-3/rcvarray.php on line 16 というエラーが出るんですが、どうやって直せばいいのですか? 正しくは、上には配列の内容が表示され、下にはarrayとだけ表示されるようです。 $arrayの直後に     $ar_enc = "";     $ar = ""; と挿入してみましたがダメでした。 @でエラーを抑制するのはなしでお願いします。

    • ベストアンサー
    • PHP
  • PhpMyAdminにおけるデータベース表示の不備

    個人でネットワークプログラミングを行うため、以下の環境を入れています。 ・PHP Version 5.2.4 ・MySql 5.0.45 ・phpMyAdmin - 2.11.5 ログインなどは出来たのですが、データベースを表示する画面になると以下のエラーメッセージが表示され、データベース一覧が表示できません。 ---------------------------------------------- エラーメッセージ: Warning: array_key_exists() [function.array-key-exists]: The second argument should be either an array or an object in [phpmyadminまでのパス]\phpMyAdmin\server_databases.php on line 172 Warning: array_key_exists() [function.array-key-exists]: The second argument should be either an array or an object in [phpmyadminまでのパス]\phpMyAdmin\server_databases.php on line 172 Warning: array_key_exists() [function.array-key-exists]: The second argument should be either an array or an object in [phpmyadminまでのパス]\phpMyAdmin\server_databases.php on line 172 Warning: array_key_exists() [function.array-key-exists]: The second argument should be either an array or an object in [phpmyadminまでのパス]\phpMyAdmin\server_databases.php on line 172 Warning: array_key_exists() [function.array-key-exists]: The second argument should be either an array or an object in [phpmyadminまでのパス]\phpMyAdmin\server_databases.php on line 172 Warning: array_key_exists() [function.array-key-exists]: The second argument should be either an array or an object in [phpmyadminまでのパス]\phpMyAdmin\server_databases.php on line 172 Warning: array_key_exists() [function.array-key-exists]: The second argument should be either an array or an object in [phpmyadminまでのパス]\phpMyAdmin\server_databases.php on line 172 合計: 1 Warning: array_key_exists() [function.array-key-exists]: The second argument should be either an array or an object in [phpmyadminまでのパス]\phpMyAdmin\server_databases.php on line 260 Warning: array_key_exists() [function.array-key-exists]: The second argument should be either an array or an object in [phpmyadminまでのパス]\phpMyAdmin\server_databases.php on line 260 Warning: array_key_exists() [function.array-key-exists]: The second argument should be either an array or an object in [phpmyadminまでのパス]\phpMyAdmin\server_databases.php on line 260 Warning: array_key_exists() [function.array-key-exists]: The second argument should be either an array or an object in [phpmyadminまでのパス]\phpMyAdmin\server_databases.php on line 260 Warning: array_key_exists() [function.array-key-exists]: The second argument should be either an array or an object in [phpmyadminまでのパス]\phpMyAdmin\server_databases.php on line 260 Warning: array_key_exists() [function.array-key-exists]: The second argument should be either an array or an object in [phpmyadminまでのパス]\phpMyAdmin\server_databases.php on line 260 Warning: array_key_exists() [function.array-key-exists]: The second argument should be either an array or an object in [phpmyadminまでのパス]\phpMyAdmin\server_databases.php on line 260 ---------------------------------------------- ソースを眺めていたところ、server_databases.phpにおけるarray_key_exists()で$stat_name, $first_databaseを引数に命令を行っているようですが、$first_databaseに値が設定されていない(=null)ためエラーが起こっているようでした(null避けによりエラーメッセージは出現しなくなった)。 しかし、$first_databaseにはデータベース一覧の情報が入るべきらしく、この値がnullということはありえません。つまり、データベース一覧を取ってこれていないのだろうと仮定したのですが、それ以降の対策が見つかりません。 かれこれ3時間程度迷いました。解決方法を知っている方は教えてください。どうかお願いします…。

  • 以下のコードでエラーが出てしまいます。

    Notice: Undefined offset: 2 in C:\xampp\htdocs\news2.php on line 18 Warning: file_get_contents(): Filename cannot be empty in C:\xampp\htdocs\news2.php on line 19 プログラミング超初心者です。var_dumpしてみてもarray[2]は存在していたのですが・・・。 なぜこのようなエラーが出るのか、またどのように解決すればよいのでしょうか。わかる方、教えてください。よろしくお願いします。 <?php $newstop="http://headlines.yahoo.co.jp/hl"; $html=file_get_contents($newstop); $patern1='/http.*c=bus/'; preg_match($patern1,$html,$matches1); //var_dump($matches1); $newstop2=($matches1[0]); $html2=file_get_contents($newstop2); //echo($html2); //!ここまでで経済面のトップページはとってこれた //ここから、記事全文を拾う $fullpattern='/http.*all/'; preg_match_all($fullpattern,$html2,$matches3); $fullurl=($matches3[2]); ※ここが18行目 $fulltext=file_get_contents($fullurl);       ※ここが19行目 echo ($fulltext); //var_dump($matches3); ?>

    • 締切済み
    • PHP