ありがとうございます。
参考にします。
URLの末尾に?hoge=fuga&fugo=hogoみたいなクエリをつけて、ページ内容を出し分けたい
2014年10月17日 at 18:54
たびたびすいません。
掲題の通りです。
よくURLの末尾に?をつけて動的にページ内容を変える手法がありますが、concrete5では可能でしょうか?
やりたいのは、エリアの出し分けです。Main_A エリア、 Main_Bエリア、Main_Cエリアを容易し、?area=a でアクセスすると、Main_BとMain_Cが非表示になる、みたいな感じです。
タグ:
Re: URLの末尾に?hoge=fuga&fugo=hogoみたいなクエリをつけて、ページ内容を出し分けたい
2014年10月21日 at 10:29
Katzさんのコードが間違っていたので修正しました。
Re: URLの末尾に?hoge=fuga&fugo=hogoみたいなクエリをつけて、ページ内容を出し分けたい
2014年12月8日 at 22:49
少し古く成ってしまっていますが、追記させて頂きます。
改善点は、エリアが複数に成る事がない前提で、switch文で判定しています。
また、クエリーストリングでパラメータを取得するので、
switch文で型判定(文字列)もしています。
ただし、クエリーストリングは、同一パラメータを付与出来てしまう為、
同一パラメータに対する処理も考慮した方が良いかも知れません。
改善点は、エリアが複数に成る事がない前提で、switch文で判定しています。
また、クエリーストリングでパラメータを取得するので、
switch文で型判定(文字列)もしています。
ただし、クエリーストリングは、同一パラメータを付与出来てしまう為、
同一パラメータに対する処理も考慮した方が良いかも知れません。
$area = isset($_GET['area']) ? $_GET['area'] : '';
switch (true) {
case $area === 'a':
$a = new Area('Main_A');
$a->display($c);
break;
case $area === 'b':
$a = new Area('Main_B');
$a->display($c);
break;
case $area === 'c':
$a = new Area('Main_C');
$a->display($c);
break;
default:
}
Your post has been saved and will be published after approval by the forum moderator.
Katz Ueno
Re: URLの末尾に?hoge=fuga&fugo=hogoみたいなクエリをつけて、ページ内容を出し分けたい
強引技で脆弱性とか考慮していないので、PHP得意な人、直してください!
http://gist.github.com/katzueno/ad6573a3a8bb5393f8ec