dポイントプレゼントキャンペーン実施中!

$_SERVER["REQUEST_METHOD"]に変な値が返ってきて困っています。

お世話になります。

最近PHPの勉強をしていて全くの初心者ですが、少し理解できない動作をしているようで困っています。

タイトルのとおり、$_SERVER["REQUEST_METHOD"]に予期せぬ値が返ってきて困っています。

<?php
 ~
 echo $_SERVER["REQUEST_METHOD"];
 ~
?>
<html>
 <head>
  <meta http-equiv="Content-type" content="text/html; charset=UTF-8">
 </head>
 <body>
  ~
  <form action="<?=$_SERVER["PHP_SELF"]?>" method="POST" enctype="multipart/form-data">
   ~
   echo "<input type=\"submit\" name=\"submit_upd\" value=\"変更する\">";
   ~
  </form>  
 </body>
</html>

上記ソースコードのうち、下のほうでechoされている<input>タグのボタンをクリックしたときに、ソース冒頭でechoされる$_SERVER["REQUEST_METHOD"]に関してです。

予期している値とは、下記URLの通り、POST/GET等の値となります。
http://php.net/manual/ja/reserved.variables.serv …

しかし、echoで実際に返ってくる値を確認してみると、下記みたいになります。
submit_upd%5B3%5D=%E5%A4%89%E6%9B%B4&contentres=&usr_no=1&log_no=3GET

どうも原因が分かりません。

サーバーは@pagesのものを使用、文字コードは全てUTF-8で統一してあります。
(ソースコードに関してはBOMなしで記述しています)

PHPのバージョンは5.2.6です。

補足ですが、phpinfo()がセキュリティ上の理由で拒否されるので、PHPのその他の情報はほとんど分からないと思います。

その他に必要な情報があれば回答させていただきます。

情報が少なく、文章も稚拙で恐縮ですがご教授願えればと思います。

よろしくお願いします。

A 回答 (1件)

凡ミスかと。


サンプル文は省略して掲載してくれていますが、実際にはもっと複雑なのでしょう。
一番最後に見える「GET」がその値で、それ以前に$_SERVER['QUERY_STRING']とかechoされているのを見落としていませんか?
また、POST指定にも関わらず、GETで来ているので formタグの閉じ忘れでformが入れ子状態になっていないか今一度確認してみてください。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!