[PHP-users 12294] Re: ファイル名?hennsuuのようなものの代入の仕方

poq php-users@php.gr.jp
Sun, 22 Dec 2002 23:47:46 +0900


しょうなりさん、キタムラさん、河瀬さんとてもありがとうございます。
使っているphpのバージョンは4.3.0で、safe_modeはoff、register_globalsはOnです。
河瀬さんのような、hogehoge.php?abcのようなタイプでも、case0、case2という
ように書けば分岐出来そうですが、どう書けばいいのかわからないです。
http://php.benscom.com/manual/ja/control-structures.switch.php
複数の引数を使う事ができないとなると、
キタムラさんが教えて下さった「hogehoge.php?xx=xx」といったものを
使うざるを得ないのでしょうか?できるなら=は使わずにいきたいのですが、
まずはキタムラさんのソースを参考に実践します。
----------hogehoge.php------------
<?php
if (! isset($_GET["page"])) { echo "ページが見つかりません。";}
else { $mode = $_GET["page"];}
if ($page == "dvd") {
 print("dvdです");
}  
if ($page == "unix") {
 print("unixです");
}
if ($page == "") {
 print("ページが見つかりません。");
}
 else {}
?>
----------------------------------
こうすると
http://www.hoge.jp/hoge.php?page=dvd
だと「dvdです」と出力され、
http://www.hoge.jp/hoge.php?page=unix
だと「unixです」と出力され、?以降、何も入れないと「ページが見つかりません。」
となるようになりました。しかし、=のところまでで止めてしまうと
ブラウザで表示時間がとてもかかるので、そのエラーの為にifの四つ目の処理を
加えました。が、そうすると?までしか入力しなかった場合、
ページが見つかりません。がダブルで表示されてしまいます。
この場合はどのようにすれば重複せずエラー画面を表示する事ができるでしょうか?
かなり試行錯誤しましたがうまく前に進みません...