2011-12-08 3 views
0

言語接頭辞URL(site.com/en/controller/actionsite.com/fr/controller/actionなど)への一般的なURLをリダイレクトしますが、誰かがせずに言語をURL に入った場合、私はにリダイレクトしたいする方法言語を持つURL。したがってsite.com/controller/actionsite.com/xx/controller/actionにリダイレクトされます。ここで、xxはセッション(またはクッキー)に格納されている言語を指定する値です。CakePHPの達人:私は、言語接頭辞URLが素晴らしい働いている

$this->paramsの配列のlanguageインデックスを検索して見つけられない場合は、単にリダイレクトすることができます。次のようなものがあります。

if (!isset($this->params['language']) { 
    $this->redirect(array('controller' => $this->controller, 'action' => $this->action, 'language' => $this->Session->read('Config.language'))); 
} 

しかし、私の懸念は、POSTまたはGETデータが削除されることです。

私には何が欠けていますか?

ありがとうございます!

答えて

1

私はこの場合非常に専門家ではありませんが、POSTデータを常にリダイレクトすることをお勧めします。したがって、言語をチェックする前に、POSTデータで何をすべきかを実行してから、適切な言語でURLにリダイレクトしてください。それを運ぶためにリダイレクト>また、GETデータ用this->のparamsを見て、ます$ this-にそれを渡すことができ Insert cakephp POST params into URL

はこれを見て。

+0

合意。投稿をリダイレクトしてデータを取得できるので、データを削除する心配はありません。 – swiecki

関連する問題