✔️GET送信とは
✔️GET送信の方法
POST送信同様に実際の開発でも大変よく使われる方法なので必ずマスターしましょう!
独学がつらくなった方は下記をご覧ください!
>>【初心者必見!】無料体験ができるプログラミングスクールをご紹介!
- 将来のキャリアに不安を感じるが、何から始めていいかわからない。。
- 仕事が忙しいため両立できるか不安。
- 効率よくスキルを身につけたい
- 完全未経験からエンジニアを目指したい方へ!カウンセリング受講者の97%以上が未経験者で安心です。
- 「就業両立コース」で、仕事と両立して効率よくスキルを身につけることができます!
- キャリアイメージ、スキル習得など、無料カウンセリングで、今悩んでいることを気軽にプロに相談できます
【基礎編】GET送信とは
GET送信とは、POST送信と同様にHTTPで作られた入力データをサーバに送信する方法です。
簡単に言うと、次のページへデータを渡すことができます。
POST送信との違いはGET送信はデータをURLの末尾に「?」を付けて、データを送信します。
例えばローカル環境でreceive.phpというファイルにある値をGET送信すると下記のようなURLになります。
http://localhost/receive.php?パラメータ名=値
パラメータ名とは送信するデータに付けた名前で、値は実際に送信されたデータのことです
【基礎編】GET送信の使い方
それではもう少し実例に近い形で確認してみましょう!
値を送信する際はPOST送信と同様に下記のように記載します。
<form action="送信先のページ" method="GET">
<input type="text" name="user_name">
<input type="submit" value="送信">
</form>
“送信先のページ”のところに、実際に値を送り、その内容を表示する先のファイルを指定します。そして今回例だとテキストボックスを使用しているので、そこに入力された値に”user_name”という名前を付けます。送信ボタンが押されたら送信先のページに画面遷移し、入力した値が送られるという流れになります。
【基礎編】GET送信の受け取り方法
GETで送られたデータの取得方法は下記の通りです。
先ほどの送信データを受け取るように記載します。
$user_name=htmlspecialchars($_GET["user_name"]);
まず受け取ったデータの格納先として変数を作ります。(ここでは$user_name)
GETデータを取得するには、$_GET変数を使用します。$_GETは連想配列の為、キーとしてinputのname属性の値を入力します。(ここではuser_name)
セキュリティ対策として、htmlspecialchars関数によってエスケープ処理を施しています。
次は実際にプログラムで確認してみましょう!
【実践編】GET送信を使ってみよう!
次はサンプルプログラムでGET送信の活用方法を確認してみましょう!
GET送信するファイルをsend.php、GET送信されたデータを受け取るファイルをreceive.phpとして作成します。
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<body>
<h2>テスト</h2>
<form action='receive.php' method="GET">
<label>名前</label>
<input type="text" name="user_name">
<br>
<label>趣味</label>
<input type="text" name="hobby">
<input type="submit" value="送信">
</form>
</body>
</head>
</html>
<?php
if(isset($_GET['user_name'])){
$user_name=htmlspecialchars($_GET['user_name']);
}else{
echo'名前を入力してください';
}
if(isset($_GET['hobby'])){
$hobby=htmlspecialchars($_GET['hobby']);
}else{
echo'趣味をを入力してください';
}
echo $user_name.'の趣味は'.$hobby.'です';
?>
send.phpには例として下記の通りに入力してみます。
送信ボタンを押すと下記のような結果になります。
URLが”http://localhost/receive.php?user_name=サラプロ&hobby=テニス”となっております。GET送信によって、URLの末尾にパラメータが渡されているのがわかると思います。
パラメータが複数ある場合は「&」で繋げられます。
また、今回使用されてるisset関数に関しては下記の記事を参考にしてください!
【応用編】POST送信とGET送信の使い分け
私が初学者の時にGET送信に関して疑問をもったことがあります。それはPOST送信とGET送信の使い分けです。
基本的に「GET」と「POST」の2つの違いは「値が見えるか見えないか」です。GET送信は、URLの末尾が変更され、第3者でもどんな値を送信しているのかを見ることができます。
2つの使い分けは、URLのブックマークできるようにするかどうかが基本です。Googleなどの検索エンジンは、検索キーワードにGET送信が使われている為、検索したキーワードをブックマークすることが可能です。一方で、ユーザIDやパスワードなど人に見られては困る情報を送信するにはPOST送信が適しています。
独学でツラくなった方へ
- 将来のキャリアに不安を感じるが、何から始めていいかわからない。。
- 仕事が忙しいため両立できるか不安。
- 効率よくスキルを身につけたい
- 完全未経験からエンジニアを目指したい方へ!カウンセリング受講者の97%以上が未経験者で安心です。
- 「就業両立コース」で、仕事と両立して効率よくスキルを身につけることができます!
- キャリアイメージ、スキル習得など、無料カウンセリングで、今悩んでいることを気軽にプロに相談できます
まとめ
✅GET送信の使い方
✅GET送信とPOST送信の使い分け
✅GET送信の応用
今回は以上になります。
GET送信は実際の開発では必ず使う内容なので是非マスターしましょう!
POST送信に関しては下記の記事を参考にして下さい!