htmlフォームでは文字等を入力して情報を送信できます。
そして、この送信された情報はPHPで取得し加工する事ができます。
PHPで出来る加工は文字からHtmlタグの除去、ファイルに保存・読み込み、mysqlで管理など色々できます。
フォーム自体はhtmlのタグで作成する必要があります。
フォームのパーツの色々
■フォームの開始
<form action="移動先のurl" method="GET/POSTのどちらか">
このタグをフォームの開始で使います。
action=””はボタンを押した時に移動するurlを指定します。
省略可能で、省略した場合には移動せずに、このページにデータに送ります。
method=””は情報を送る方法をgetかpostのどちらかで指定します。
getはurlの最後にデータを追加して送信します。
「url?パーツ名=データ&パーツ名=データ…」といった感じです。
postはデータを見えないようにして送信します。
■フォームの終了
</form>
フォームの終端です。
でフォーム部分の記述を終了します。
ボタンやテキストを入力するボックスは
の間に記述します。
■フォームのパーツの設置
<input type="パーツの種類" name="送信先ページでの連想配列のキーの名前" value="初期値" size="大きさ">
・type…パーツの種類を設定します。以下のような種類があります。
text…一行テキストボックス
password…パスワードボックス
checkbox…チェックボックス
radio…ラジオボタン
file…アップロードファイル
submit…送信ボタン
hidden…表示されないけれどデータを送る事ができるという物
・name…送り先の連想配列のキーになります。
・value…入力ボックスでは初期値。送られる値でもあります。
・size…パーツの大きさです。
name/value/sizeは省略できます。
・テキストボックスとパスワードボックスは文字数の制限をかける事ができます。
方法は「maxlength=”文字数”」という項目を追加します。
<input type="text" name="data" maxlength="4">
他にもdisabledと入れると入力部分が無効になりデータも送られなくなります。
<input type="text" name="data" disabled>
readonlyと入れると入力部分が読み取り専用になりますがデータは送られます。
<input type="text" name="data" readonly>
チェックボックスとラジオボタンには「checked」を入れると
初期状態でチェックが入ります。
<input type="radio" name="check" value="あああ" checked>あああ <input type="radio" name="check" value="いいい">いいい
ラジオボタンはnameが同じ物にすると同じグループとなり
グループ内で選択される項目が常に最大一つのみになります。
つまり、押したラジオボタンにチェックがつき
それ以外のグループ内のラジオボタンのチェックが外れます。
他にもフォームのパーツにはtextarea等の種類がありますが
ここでは割愛します。
実際に動かしてみる
例としてデータを送受信できるシンプルなサンプルを作ってみました。
●test06_1.php
<form action="test06_2.php" method="post"> 文字<input type="text" name="data" maxlength="4"> <br> <br> <input type="submit" name="botan" value="send">ボタン </form>
フォームで宣言したパーツのsendボタンを押すと
test06_2.phpに対してテキストボックスに書かれた文字を送信し
ページもtest06_2.phpへジャンプします。
input type=”text”でテキストボックスを表示し、name=”data”でテキストを収納する場所の名前
maxlength=”4″で最大文字数を決めました。
つまり、最大4文字まで送る事が出来るフォームです。
これを実行すると上の画像のように文字入力ボックスとボタンのフォームが出現します。
sendボタンをクリックするとtest06_2.phpへ
一行テキストボックスとボタンの情報を持ってジャンプします。
そして、以下が受け取る側のページです。
この場合は
<form method=”post”>なので、データが$_POST[]に連想配列として代入されます。