[PHP-users 21796]register_grobals=on時にpost、getの動作が違う

T.Yamaguchi tyamagch @ bd.mbn.or.jp
2004年 5月 22日 (土) 05:39:01 JST


山口といいます。

以前に「[PHP-users 21302]バージョンアップするとエラーになる」で
質問させていただいた者です。
このときは結局必要な外部プログラムをアップロードし忘れていたよう
で再アップロードしたら解決できました。

今回の質問はFAQかもしれませんが、検索しても芳しい結果を得られなかった
ので質問します。

環境はLinux + PHP Version 4.2.3 で表題の通りregister_grobalsの値が
onになっています。
ここで下記のようなフォームから入力したときにmethod="get"であれば、
プログラム内の同名の変数に値がそのまま入るのに"post"だと入らないと
いう状態になっています。$_POST["test"]のようにしてもダメなので、
register_grobalsの値は関係ないように思えますが…。

<form action="./action.php" method="POST">
    Name:  <input type="text" name="test"><br>
    Email: <input type="text" name="oldnews"><br>
    <input type="submit" name="submit" value="Submit me!">
</form>

サーバー側(action.php)は次のようになっています。

1:<?php echo $test; ?>
2:<?php echo $_POST["oldnews"]; ?>
3:<?php echo $oldnews; ?>

method を get にすると1行目と3行目では変数の値が表示されました。

よろしくお願いします。

***************************************
  Tsukasa Yamaguchi
  http://www33.ocn.ne.jp/~t_yamaguch/
  tyamagch @ bd.mbn.or.jp
***************************************



PHP-users メーリングリストの案内