メールやアンケートフォームの確認画面など、フォームのデータを別ページで受け取り処理する作業はよく行われます。今回は、フォームから送られてきたデータをphpで受け取る方法を紹介します。
postか?getか?によって書き方が違います
phpでデータを受け取る方法は、フォームから「post」で送信されたか、「get」で送信されたかで違ってきます。
具体的に、A.html から B.php に「post」で送信された場合と、「get」で送信された場合のサンプルを使って見てみましょう。
post送信の場合
A.html内
1 2 3 4 |
<form method="post" action="B.php"> <input type="text" name="test" /> <input type="submit" value="送信" /> </form> |
B.php内
1 |
<?php $_POST['test']; ?> |
get送信の場合
A.html内
1 2 3 4 |
<form method="get" action="B.php"> <input type="text" name="test" /> <input type="submit" value="送信" /> </form> |
B.php内
1 |
<?php $_GET['test']; ?> |
このように、post送信の場合は $_POST[‘xxxx’] 、get送信の場合は$_GET[‘xxxx’]と書き方が違うので、フォームのmethodを確認することは必須です。
受け取りたいデータのnameを[ ] 内に記述することでデータを受け取ることができます。
受け取ったデータを表示させる方法
受け取ったデータをサイト内に表示させたい場合は、echo を使います。通常の文字として表示させることもできますし、inputタグのvalueとして出力させることもできます。
1 2 3 4 5 |
<!--文字として出力--> <p><?php echo $_POST['test']; ?></p> <!--inputタグのvalueとして出力--> <input type="text" name="test2" value="<?php echo $_POST['test']; ?>" /> |