1

ユーザーが入力したキーワードを、このwww.example.com/search_result/input from Javascriptのように Cakephp の JavaScript の関数 search_result($input) に渡して:いますno arguments found for search_result。他の入力に対しては正常に機能します。

4

2 に答える 2

2

おそらく、Javascript から PHP に渡す前に、検索語をエンコードする必要があるでしょう (これは、AJAX を使用していることを意味すると思います)。

以下を使用してこれを行うことができますencodeURIComponent

encodeURIComponent(term);
于 2012-06-28T13:45:28.513 に答える
0

URI エンコーディングに加えて、:cake パラメーターを分離するために使用される問題があるため、検索クエリに含まれていると、cake はそれをパラメーターと見なします。

しかし、本には修正があり、明らかに、「末尾の星の構文」を使用できます。

Router::connect(
    '/search_result/**', // notice two stars instead of one
    array('controller' => 'search', 'action' => 'search_result')
);

これは、 の後のすべて/search_result/を単一のパラメーターとして渡す必要があります。

それが役立つことを願っています。

于 2012-06-28T17:14:49.227 に答える