【HTML】フォームを送信する方法
フォーム作成
HTMLでフォームを作成するには、<form>タグを使用します。フォームには、ユーザーが情報を入力するための各種入力フィールドを追加できます。フォームを送信する際に必要な情報を取得するために、さまざまなタイプの入力フィールドを使用します。
基本的なフォーム要素の例:
<form action="submit.php" method="post">
<label for="name">名前:</label>
<input type="text" id="name" name="name"><br>
<label for="email">メールアドレス:</label>
<input type="email" id="email" name="email"><br>
<input type="submit" value="送信">
</form>
このフォームは、nameとemailという2つの入力フィールドを含んでいます。
GETメソッド
GETメソッドは、フォームのデータをURLの一部として送信する方法です。URLの末尾にデータが付加され、サーバーに送信されます。GETメソッドは、主にデータを取得する際に使用され、フォームデータがURLに表示されるため、セキュリティが要求される情報には適していません。
GETメソッドの例:
<form action="search.php" method="get">
<label for="query">検索ワード:</label>
<input type="text" id="query" name="query"><br>
<input type="submit" value="検索">
</form>
このフォームを送信すると、search.phpにqueryパラメータとして検索ワードが送信されます。URLは次のようになります:
search.php?query=example
POSTメソッド
POSTメソッドは、フォームのデータをHTTPリクエストのボディ部分に送信します。GETメソッドとは異なり、データはURLに表示されないため、セキュリティが高いとされています。特に、機密情報や大量のデータを送信する場合に使用されます。
POSTメソッドの例:
<form action="submit.php" method="post">
<label for="username">ユーザー名:</label>
<input type="text" id="username" name="username"><br>
<label for="password">パスワード:</label>
<input type="password" id="password" name="password"><br>
<input type="submit" value="ログイン">
</form>
このフォームを送信すると、submit.phpにユーザー名とパスワードがPOSTリクエストとして送信されます。
フォームの送信例
フォームを送信するには、<form>タグの中で指定したaction属性のURLにデータが送信されます。送信先のURLが正しいこと、またそのURLでデータを処理するサーバー側のスクリプトが必要です。
以下は、フォーム送信後にPHPスクリプトで受け取ったデータを表示する例です。
<form action="submit.php" method="post">
<label for="email">メールアドレス:</label>
<input type="email" id="email" name="email"><br>
<input type="submit" value="送信">
</form>
<?php
// submit.php
if ($_SERVER["REQUEST_METHOD"] == "POST") {
$email = $_POST["email"];
echo "送信されたメールアドレス: " . htmlspecialchars($email);
}
?>
このコードでは、ユーザーが入力したメールアドレスがsubmit.phpに送信され、PHPスクリプトがそのデータを受け取って表示します。