MENU
カテゴリー
Reina
エンジニア兼webライター
大学卒業後、食品企業の品質管理業務に4年半務める。

仕事と並行してDMM WEBCAMPで学習開始、未経験からエンジニア転職に成功しました。

現在は受託企業にてシステムエンジニアとして就業しています。

このブログでは未経験に視点を置いた情報を発信していきたいと思います。

PHPの$_POSTの使い方を紹介【データを送信して表示させる】

当ページのリンクには広告が含まれています。

フォームで入力した文字を画面に表示させたい!

そう悩むPHP初心者のいるのではないでしょうか。

PHPの$_POSTを使用すると、入力したデータをサーバーに送信して、受け取った値を画面上に表示させることができますよ。

今回はPHP初心者の方に向けて、POST送信の仕組みと実際のコードを紹介していきます。

目次

PHPのPOSTとは?

PHPのPOSTとは、フォームなどから送られてきたデータを、HTTPリクエストの本文に入れて送信する方法のことです。

HTTPリクエストとは

Webブラウザやアプリなどのクライアントが、サーバーに対して、「こんな処理をしてほしい」といった 要求(リクエスト) をすることです。

POSTの特徴を簡潔にまとめると、

  • データはURLに表示されない
  • 送信できるデータ量が多い

などがあります。

Reina

要するに、入力フォームの内容を、サーバーに隠して送る仕組みのことですね!

POSTを使ってデータを送信する

Reina

ではさっそく、POSTを使用してサーバー側にデータを送信してみましょう!

まずは簡単に「入力フォーム」と「送信ボタン」と「表示させるメッセージ欄」を作ります。

<!DOCTYPE html>
<html lang="ja">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <main>
        <form method="post">
            <div class="area01">
                <div id="message">
                    メッセージ:<?php echo htmlspecialchars($moji); ?>
                </div>
                <div id="text-form">
                    <input type="text" name="item01" id="item01" value="" />
                </div>
                <div id="text-btn">
                    <input type="submit" name="btn01" id="btn01" value="送信" />
                </div>
            </div>
        </form>
    </main>
</body>
</html>

画面を確認すると、このように表示されました。

入力フォーム
Reina

この時、<form></form>で囲むことを忘れないでくださいね!

formタグで囲まないと、入力したデータがサーバー側に送信されないので、忘れないようにしましょう。

では、次に入力したデータをサーバー側に渡す処理を書いていきます。

<?php
if (isset($_POST['item01'])) {
    // 入力値がある場合
    $message = $_POST['item01'];
} else {
    // 入力値がない場合
    $message = '';
}
?>
<!DOCTYPE html>
<html lang="ja">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <main>
        <form method="post">
            <div class="area01">
                <div id="message">
                    メッセージ:<?php echo htmlspecialchars($moji); ?>
                </div>
                <div id="text-form">
                    <input type="text" name="item01" id="item01" value="" />
                </div>
                <div id="text-btn">
                    <input type="submit" name="btn01" id="btn01" value="送信" />
                </div>
            </div>
        </form>
    </main>
</body>
</html>

$_POSTは、PHPの定義済み変数のひとつで、送信された値を取得するスーパーグローバル変数を指します。

入力フォームを設置する際、name属性で「item01」と設定しました。

$_POSTでは、name属性を設定することで、フォームに入力された値を取得することができます。

実際に「こんにちは」と入力し、送信ボタンを押してみましょう。

分かりやすく、VScodeのデバッグ機能を使用してみていきます。

Reina

$messageという変数に、ちゃんと「こんにちは」と入っていますね!

ちなみにissetとは定義されているのか、されていないのか調べる便利な関数です。

もう少し詳しく知りたい方は下記の記事もご覧ください。

では、画面を確認してみましょう。

メッセージ:の横に入力した文字が表示されました。

まとめ:POSTの基礎を理解しよう!

今回はPHPのPOST送信における基礎的なコードの書き方を紹介しました。

POSTはフォームに入力した値を、サーバーに送信する必要な手段です。

今回の記事は初歩的な内容になりますが、しっかり理解しておくようにしましょう!

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

大学卒業後、新卒で食品の品質管理業務を4年半務める。

2023年3月よりDMM WEBCAMP 就業両立コースにてプログラミング学習開始し、見事未経験からエンジニア転職に成功。

現在は受託企業にてPHPエンジニアとして日々奮闘中。

エンジニアとして働く傍ら、Webライターとしても活動中です。

目次