初めに
GETについて学習した内容のoutput用記事です。
※内容に間違いなどがある場合はご指摘をよろしくお願いします。
※こちらの記事はあくまでも個人で学習した内容のoutputとしての記事になります。
GETのテスト
Http通信でリクエストを行う方法の一つであるGETを試してみるための入力フォームを作成します。methodには"GET"と入力し、actionにはリクエスト先のページを入力します。ここではform.phpとしました。nameにはデータを取得するための名前を付けておきます。
<form method="GET" action="form.php">
名前
<input type="text" name="input_name">
<br>
<input type="checkbox" name="dishes[]" value="カレー">カレー
<input type="checkbox" name="dishes[]" value="チヂミ">チヂミ
<input type="checkbox" name="dishes[]" value="牛丼">牛丼
<input type="submit" value="submit">
</form>
GETの場合、ブラウザーのアドレスバーに?から始まるquery stringが表示され、入力した値をみることができます。
$_GET
phpに予め用意されているスーパグローバル変数$_GET。GETメソッドでリクエストした値が格納されています。
$_GET["nameの値"]); //$_GETの書き方
var_dumpを使って $_GETの中身を表示してみます。また、empty()メソッドを使い$_GETに値が入っている場合にだけ$_GETが表示されるようにします。
echo '<pre>';
if (!empty($_GET)) {
var_dump($_GET);
}
echo '</pre>';
keyとvalueの連想配列として保存されていることが分かります。
POSTのテスト
POST通信を行うため、methodをPOSTにした入力フォームを作成します。
<body>
<form method="POST" action="form.php">
<select name="books">
<option value="--">本を選択</option>
<option value="novel">小説</option>
<option value="comic">漫画</option>
<option value="magazine">雑誌</option>
</select>
<input type="submit" value="submit">
</form>
</body>
$_POST
phpに予め用意されているスーパグローバル変数$_POST。POSTメソッドのリクエストとして入力した値が格納されています。
$_POST["nameの値"]); //$_POSTの書き方
$_GETとは違って入力値を送信してもアドレスバーには何も表示されません。同じくvar_dumpメソッドで中身を確認します。
echo '<pre>';
if (!empty($_POST)) {
var_dump($_POST);
}
echo '</pre>';
?>
こちらも$_GETと同様、連想配列という形でデータが保存されていることが分かります。
参考サイト
https://www.php.net/manual/ja/reserved.variables.get.php
https://www.php.net/manual/ja/reserved.variables.post.php