次のようなif関数を使ったサンプルプログラムを作っていこうと思います。
フォームで入力できる部分を二つ作りそれぞれに数字を入れさせる。
一人目:□点
二人目:□点
実行ボタン
そして、実行ボタンを押されたら、
というように表示させたいと思います。
それではさっそく作っていきましょう。
まずは簡単なフォームから作ります。
<body> <p>点数を入力してください。</p> <form method="post" action="page2.php"> <p>あなたの点数</p> <input type="text" name="your_score" size="5"> <p>ペアの点数</p> <input type="text" name="pare_score" size="5"><br><br> <input type="submit" name="sub" value="実行する"> </form> </body>
さて、次にpage2.phpを作ります。
<?php $your_score = $_POST["your_score"]; $pare_score = $_POST["pare_score"]; ?> <?php if (is_numeric($your_score) == false or $your_score <0 or 100 < $your_score or is_numeric ($pare_score) == false or $pare_score <0 or 100 < $pare_score){ echo "0から100までの半角数値を入力してください。"; exit(); }elseif($your_score >=80){ echo "あなたは、合格です。"; }else{ echo "あなたは、不合格です。"; } ?> <br> <?php if($pare_score >=80){ echo "あなたのペアは、合格です。"; }else{ echo "あなたのペアは、不合格です。"; } ?> <br> <?php if($your_score >= 80 and $pare_score >=80){ echo "有能なペアです。"; }elseif($your_score >= 80 or $pare_score >= 80){ echo "勉強はどちらかに任せよう。"; }else{ echo "頑張りましょう。"; } ?>
if文の条件部分のandやorは何回でも書き込み可能です。
最初のifの条件の部分であらゆるエラーを返せるようにしています。
exit()はそこで処理を終えるという意味の関数です。
また三つめのphp内のifとifelseは順番を違えてしまうと、処理がかぶってしまうのでまずは条件がより限定的なものから記述するといいかもしれません。
試しに最初のフォームに
100点と0点を入れてます。
以上