TODAY: YESTERDAY:
TOTAL:

Lesson9-2 〜複数のパラメータを受け取る〜
■Lessonを終えると以下のようなPHPプログラムが作れます。


Lessonサンプル

■サンプルプログラム1

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=shift_jis">
<title>パラメータの受け渡し</title>
</head><body>カテゴリー1<hr>
<p><a href="sample02.php?category=1&no=1">NO.1いいちこ</a></p>
カテゴリー2<hr>
<p><a href="sample02.php?category=2&no=1">NO.2大五郎</a></p>
</body>
</html>

■サンプルプログラム2

<?php
$category = $_REQUEST["category"];
$no = $_REQUEST["no"];

?>
<html>
<head>
<title>sample02</title>
</head>
<body>
<?php
if($category == 1){
print "あなたはカテゴリー${category}にいます。<br>";
if($no == 1){
print "あなたはNO.${no}番のいいちこを選びました";
}
}

if($category == 2){
print "あなたはカテゴリー${category}にいます。<br>";
if($no == 2){
print "あなたはNO.${no}番の大五郎を選びました";
}
}

?>
<p><a href="parameter2.html">戻る</a></p>
</body>
</html>

テキストエディタに以下のように書き込んで、「lesson8」フォルダの中に「parameter2.html」として保存しましょう。

できましたら、ブラウザのアドレスに
http://localhost/lesson9/parameter2.html」にアクセス!
ロリポップ!
さくらのレンタルサーバ
などのレンタルサーバー使ってる方はlocalhostのところはドメイン名になります。
(簡単に安くネットショップを開きたい方はこちら!)

さて、如何でしょうか?ちゃんと表示されましたでしょうか?

■解説1(parameter2.html)

sample02.php?category=1&no=1
sample02.php?category=2&no=1

さて、ここですがLesson9-1とほぼかわりません。少しパラメータが長くなったって感じですね。パラメータを2つ送信したい場合は1つ目のパラメータ(category=1)のうしろを「&」で繋げて2つ目(no=1)を書きます。もっとパラメータを増やしたければ「&」で繋げればOKです。あとはPHPプログラムでこの2つの値を受け取ればOKです。

■解説2(sample02.php)

$category = $_REQUEST["category"];
$no = $_REQUEST["no"];

parameter2.htmlから受け取ったパラメータ(今回は、categoryno)を変数に格納します。

if($category == 1){
print "あなたはカテゴリー${category}にいます。<br>";
if($no == 1){
print "あなたはNO.${no}番のいいちこを選びました";
}
}

ちょっとコレ見づらいんですが、if(){}の中にさらに、if(){}が入ってるいる状態。これをよく「入れ子」や「ネスト」と言います。

  1. もし、$categoryが1だったら{}を実行
  2. $categoryが1で$noが1だったら{}の中を実行

入れ子、ネストについては理解できましたでしょうか?初めのifが実行されて、さらにソノ中のifが評価・実行されるわけですね。初めのifが実行されなければ、当然ながら入れ子、ネストの中のifは実行されないということです。
  さて、今回は複数のパラメータの受け取りとどさくさにまぎれて、入れ子、ネストを勉強しました。もうコノ辺まで来ると自分なりの想像力を働かせて色々とプログラムを組めるはずです。ハイ。

このLessonが役に立った方は、1クリックお願いします!PHPランキング

■スポンサードリンク