cakephpでURLの含まれる引数を渡す、受け取る方法。
cakephpでは、
http://hogehoge.com/hanage.php
というようなURLは
http://hogehoge.com/hanage
としてアクセスするらしい。
じゃあ、引数を持ったURLの場合どうするのか。
http://hogehoge.com/hanage.php?nagasa=100
とか
http://hogehoge.com/hanage.php?nagasa=100&color=bk
とかはどうすんだ?
インターネッツの情報では、
http://hogehoge.com/hanage/100
こんな風にしてアクセスして、Controller内で受け取れ、とか
http://hogehoge.com/hanage/nagasa:100/color:bk
とすればOKとか書いてあるんだけど、俺の環境では値を受け取る前にエラーページが表示されてしまう。
ついでに「:」でつなぐ方法は、URLには「:」を含めてはイカンというルールがあるらしく、携帯からのアクセスで問題を起こすらしい。
そこまでたどり着いていない俺には遠い話ですけども。
追記:
あまり綺麗ではないけども、一応解決。中途半端に。
http://hogehoge.com/hanage/?nagasa=100
function index(){
$this->set('nagasa', $this->params['url']['nagasa']);
$nagasa = $this->params['url']['nagasa'];
}
こんな感じでアクセスできる。
ちなみにindex.phpじゃない場合はURLが若干違う。
たとえばmigiana.phpだった場合はこんな感じ。
追記:
あまり綺麗ではないけども、一応解決。中途半端に。
http://hogehoge.com/hanage/?nagasa=100
function index(){
$this->set('nagasa', $this->params['url']['nagasa']);
$nagasa = $this->params['url']['nagasa'];
}
こんな感じでアクセスできる。
ちなみにindex.phpじゃない場合はURLが若干違う。
たとえばmigiana.phpだった場合はこんな感じ。
http://hogehoge.com/hanage/migiana/?nagasa=100
もうちょっと綺麗にできるようになりたいと思う今日この頃。