前回までの、フォームとPHPプログラムの話で、チェックボックスとforeach (フォーイーチ)文の話はチョット難しかったかもしれませんが、foreach文は 配列を取り扱う上で必須のPHP文法となりますので、そのことは頭の中に入 れておいてください。 さて、今回は、フォームとPHPプログラムの話で、HTML文のドロップダ ウンリストからPHP文に値を引き渡す事を考えてみたいと思います。 また、PHP文の新しい文法も同時に紹介したいと思います。 また、今回の例は、直感的に分かり易いと思いますので、ご安心ください。 ■ドロップダウンリストから値をPHPプログラムに引き渡す。 まずは簡単なドロップダウンリストを作成したいと思います。 -------------------------------------------- <html> <head> <title>ドロップダウンリストのテスト</title> </head> <body> 明日は傘を持っていくべきか?<br> <br> 明日の降水確率<br> <form action="076-1.php" method="post"> <SELECT name="kousui"> <OPTION></OPTION> <OPTION value="10">10%</OPTION> <OPTION value="50">50%</OPTION> <OPTION value="80">80%</OPTION> </SELECT> <input type="submit" name "bottun1" value="入 力"> </form> </body> </html> -------------------------------------------- これを「076-1.htm」の名前で「C:\Inetpub\wwwroot\php」フォルダに保存し ます。
このアイコンをダブルクリックして、ブラウザ立ち上げると、いろいろなホー ムページで見慣れているドロップダウンリストが表示されるかと思います。
次に、HTMLフォームから入力された値を受け取るPHPプログラムを作成 します。 ---------------------------------------------------------------- <?php $a = $_POST["kousui"]; if($a == 10){ print("明日の降水確率:".$a."%<br>"); print("明日は傘を持っていく必要はないでしょう"); } elseif($a == 50){ print("明日の降水確率:".$a."%<br>"); print("明日は念のため、傘を持っていく方が良いでしょう"); } elseif($a == 80){ print("明日の降水確率:".$a."%<br>"); print("明日は傘を持っていく必要があります"); } ?> ---------------------------------------------------------------- このPHPプログラムを上と同じく、「076-1.php」の名前で「C:\Inetpub\ww wroot\php」フォルダに保存します。
ドロップダウンリストでは、「076-1.htm」の「<SELECT name="kousui">」と 指定してあげて(書くことにより)、PHPプログラムの方で、「$_POST["ko usui"]」と書くことにより、ドロップダウンリストで指定した値を受け取るこ とができます。 「076-1.php」の例では、受け取った値を「$a = $_POST["kousui"]」と書くこ とにより、変数「$a」に代入しています。 まあ、実際にプログラムを動かさなくても大体、どのようにブラウザに表示さ れるか予想できると思いますが、とりあえず動かしてみましょう。 ブラウザのアドレス欄に「http://localhost/php/076.htm」と入力して、ドロ ップダウンリストで好きな数字を選んでください。
そうすると、次の画面で、それなりのメッセージがPHPプログラムにより表 示されるかと思います。
■今までお話してこなかった新規の内容 さて、ここで、今までお話してこなかったことが2つあります。 1つは、いままで「=」は右辺の値を左辺に代入する記号だとお話してきまし た。 ところがよく見てみると、上の「076.php」のプログラムの中に「$a==10」と いう具合に「==」というような記号があります。 このように、「=」を2つ並べると、はじめてPHPの文法上では「$aと10は 等しい」とい意味になります。 あと、もう一つは if(なんたらかんたら){ なんたらかんたら } elseif(なんたらかんたら){ なんたらかんたら } という構文があります。 これは、チョット難しい言葉で言うと、「条件分岐」という構文で、「もし〜 だったら、〜する。でなく〜だったら、〜する。」という意味をもっているの ですが、これについて説明すると、話が長くなりますので、これについては、 次回に、ということでご容赦願います。
42歳のオヤジでもできた!パソコンサーバー化計画 (マガジンID:0000114576)
Powered by