PHPのURLエンコードの仕組み

新人がはまっていたので、まとめてみた。

form内は自動的にurlエンコードされるので、urlエンコード不要。下記のように「あああ」とそのまま書けばよい。

<form action="index.php" method="GET">
<input type="hidden" name="MT" value="あああ"/>
</form>

a タグのhref属性では下記のようにurlエンコードが必要。

<a href="〜?MT=%82%a0%82%a0%82%a0">xxx</a>

どちらの場合も下記のようなurlが生成されて、サーバ側に送られる。

〜index.php?MT=%82%a0%82%a0%82%a0

サーバ側のPHPで、$_GET['MT']とすると、自動的にurldecodeされ、「あああ」という文字列が取得できる。

にほんブログ村 IT技術ブログへ
1票ポチッと押して下さい♪このブログのランキングが少し上がります。