●フォーム
HTMLのformタグを使ってデータをやり取りすることができる。
※データは変数の形で送られる。
①送信(HTML):
<form action ="データ送信先(.phpファイル指定など)" method ="送信方法(get or post)" />
</form>
※formタグにmethod記述がない場合はgetで受け取る<br />
※name属性がないとデータを取得できないため、name属性は必ずつける。([]をつければ配列キーを指定することも可能)
②受信(PHP):
methodで指定したそれぞれ、
getデータ取得は$_GET
postデータ取得$_POST
で受け取る。
※getは入力データがURL末尾に表示され、postは表示されない。
そのため、
⇒検索系のものはgetで作成したほうが良い
⇒個人情報入力系はpostで作成したほうが良い
※$_REQUESTを使えばget・postどちらのデータも受け取れる。しかし、postデータの場合は悪意のあるユーザーから情報をいじられる可能性があるため使用しないほうが良い。
③受信した変数はデータのうわ書かれなどを防ぐために、変数または配列に格納する。
$変数 = $_GET['nameで指定した変数名']
$変数 = $_POST['nameで指定した変数名']
④入力情報を使用して、関数にあてはめるなど、別のことに使っても可。
例:
<form action="<?php echo $_SERVER['SCRIPT_NAME'] ?>" method="get">
<input type="text" name="pass" />
<input type="submit" />
</form>
$pass = $_GET['pass'];
if(isset($pass) == false){
$msg = 'あの言葉を教えて。僕も一緒に言う';
}elseif($pass == 'バルス'){
$msg = 'ラピュタ崩壊';
}else{
$msg = '時間だ。答えを聞こう';
};
以下のように表示、
入力項目に、
変数がない場合(初期表示時) ⇒ 「あの言葉を教えて。僕も一緒に言う」と表示される
「バルス」と入力され場合 ⇒ 「ラピュタ崩壊」と表示される
「バルス」以外が入力された場合⇒ 「時間だ。答えを聞こう」と表示される
※formのリンク先に
PHPの$_SERVER['SCRIPT_NAME']を使うと今開いているページを表示してくれる。
最終更新:2012年01月11日 18:13