$this->redirect("./other/" . urlencode($str));/other/の後に、渡したい値をURLエンコードしてつけていることがわかるでしょう。そして受け取る側のotherメソッドでは、public function other($param){……こんな具合に、引数に$paramという変数が用意されています。これで、/other/の後につけた値が、そのまま引数の$paramに受け渡されるのです。後は、URLデコードして値をページに書き出すだけです。$this->redirect("./other/abc/xyz/123”); ↓public function other($a, $b, $c){……これで$a = “abc”, $b = “xyz”, $c = “123”というように、各引数にそれぞれのパラメータが保管されます。実に安直で便利ですね。※リストが表示されない場合
AddBlockなどの広告ブロックツールがONになっているとリストなどが表示されない場合があります。これらのツールをOFFにしてみてください。
※パラメータの受け渡し
<?php
App::uses('AppController', 'Controller');
class SampleController extends AppController {
public function index() {
$this -> autoRender = false;
$date = new DateTime();
$date->setTimeZone(new DateTimeZone('Asia/Tokyo'));
$str = $date->format("H:i:s");
$this->redirect("./other/" . urlencode($str));
}
public function other($param){
$this -> autoRender = false;
$str = urldecode($param);
echo "<html><head></head><body>";
echo "<h1>サンプルページ</h1>";
echo "<p>これはもう1つのページです。</p>";
echo "<p>送られた値: " . $str . "</p>";
echo "</body></html>";
}
}
| << 前へ |