アプリケーション
ここではformを利用してサーバーとクライアント間のやりとりの説明をします。
みなさんWEBサイトでフォームやチェックボックスからデータを入力したことがあると思います。 このフォームやチェックボックスなど、 クライアント側で入力されたデータはサーバー側に送信されます。 まずはhtmlで入力フォームを作成してみましょう。
<html>
<head><title>input.html</title></head>
<body>
入力フォームです。
名前を入力してみましょう。
<form action="output.php" method="post">
<table border="1">
<tr>
<td>名前</td>
<td><input type="text" name="name"></td>
<td colspan="2" align="center">
<input type="submit" value="入力">
</td>
</tr>
</table>
</form>
</body>
</html>
<form action="output.php" method="post">
HTMLのformタグを使ってデータの受け渡しを行います。 action属性で指定してるファイルにデータを渡します。ここではoutput.phpというファイルを指定してます。 method属性ではデータを送る際の送信方法を指定します。postとはURLとは別にデータを送る方法です。
<input type="text" name="name">
inputタグのnameオプションで指定している名前(ここではname)で入力したデータが送られます。 typeオプションではtextを指定してtextフィールドを表示しています。
<input type="submit" value="入力">
typeオプションでsubmitを指定し、送信ボタンを表示してます。 valueにはボタンに表示する名前を入力できます。
次に出力フォームをPHPスクリプトで書いてみましょう。
<html>
<head><title>output.php</title></head>
<body>
<?php
$name = $_POST['name'];
print ("次のデータを受け取りました<br />");
print ("名前:$name<br />");
?>
</body>
</html>
実行結果を見る
$name = $_POST['name'];
スーパーグローバル変数である$_POSTを使っています。 スーパーグローバル変数とは宣言なしで使えるグローバル変数のことです。 サーバークライアント間のデータのやり取りを担っています。 ここでは、入力フォームでmethodをpostと指定したので、 スーパーグローバル変数$_POSTによって受け取っています。 入力したテキストはnameという名前で送信されているので $_POST['name']となります。