0

目標:適切なビューを取得するためにいくつかの基本的な事前登録情報を収集し、その他のいくつかの詳細を管理します。

問題:意図したメソッドに何も渡せないようです。何も渡さない場合、else条件が評価され、リダイレクトが発生します。ただし、$preRegが渡された場合、内容に関係なく、このエラーを揺さぶることはできません。

無効なユーザー エラー: 要求されたアドレス

'/myAppName/users/registerUser/userType%26amp%3B7%26amp%3B3%26amp%3B1%26amp%3B5%26amp%3B%26amp%3B%26amp%3B'

このサーバーには見つかりませんでした。

これは最初の方法です:

public function register() {
            if ($this->request->is('post')) {
                if ($this->request->url == "users/register") {
                    $this->redirect("registerUser/".urlencode(implode("&",$this->request->data('Registration'))));
                }
            }
                 // various other logic
}

同じコントローラーの別のメソッドに、完全に機密ではないが有用な情報を渡す必要があります。

public function registerUser($preReg = null) {
        if ($preReg) {
            $data = explode("&",urldecode($preReg));
            $this->view($preReg['UserType']);
            $groups = $this->User->Group->find('all', array('conditions' => array("name =".strtolower(substr($preReg['UserType'], -4)))));
            $this->set(compact($groups, $data));
        } else {
            $this->Session->setFlash("A few details are required before registration can begin. Please fill out the form below.");
            $this->redirect("register");
        }
    }

これが行く先のビューは、今のところ、このようにシンプルです:

<h1>THIS IS HOW I KNOW I GOT HERE</h1>
<?php pr($this->request);?>

なぜこれが起こるのか、特に私の考え方に関して、私が間違っていることを理解したいと思っています。誰?

4

1 に答える 1