【PHP授業五日目】値の送受信(続き)
値の送受信(続き)
●おさらいGET1
●GETで受け取った値を出力(必須)
echo '<pre>';
var_dump($_GET);
echo '</pre>';
●エラーメッセージを管理する配列
$error = ;
1.値が届いているか?:isset命令
if (isset($_GET['id'])) {
値が届いている時の処理
$id = $_GET['id']; 使いやすい変数名に代入
if (ctype_digit($id)) {
整数に変換できる時の処理
if ($id < 0 || $id > 2) {
$error = '3.不正な値です';
}
整数に変換できなかった時の処理
} else {
$error = '2.不正な値です';
} 値が届いていない時の処理
} else {
$error = '1.値が届いていません';
}
●ctype_digit
var_dump(ctype_digit('10')); true
var_dump(ctype_digit('10a')); false
var_dump(ctype_digit('0.5')); false
var_dump(ctype_digit('abc')); false
var_dump(ctype_digit(10)); false
var_dump(ctype_digit(0.5)); false
・文字列が数字かどうかを調べる
・文字のすべてが数字かどうか確認するので、「0.1」などは「.」が文字列になるのでfalseになる
重要な知識:PHPはHTMLから文字列型に変換して持ってくるので数値型でくることはない
●表示するためのHTML&PHP
$error関数が0のときキャラ表示
<div class="name">
</div>
<div class="life">
</div>
<div class="img">
</div>
$error関数が0じゃないときエラーメッセージ表示
<h1>エラー</h1>
<ul class="error">
</ul>
●フォームで囲むとき
・この場所は最悪<boby>のすぐ下でもOK(状況に応じて変えるのがなおよい)
●値の送受信を作成手順
1.ページ遷移図
・どのページ間で値のやり取りがあるのか
・値を何に使うのか
・値の名前
・値の内容:例)数値の場合の範囲など
2.送信側の作成
・フォームパーツを作成
3.受信側の作成
・受け取った値を確認
・$_GETや$_POSTをvar_dumpする
・値のチェック
・値を使った必要な処理を作成
・正しい値の時の処理
例)情報の表示など
・不正な値の時の処理
例)エラーメッセージの表示など
・正しい結果が得られるか確認