2016-08-02 9 views
0

コントローラーから取得したデータをYii2の別のコントローラー(同じフォルダー内)に送ることはできますか?yii2のコントローラーから別のコントローラーにデータを送信する方法

これは私のSiteControllerです:

public function actionIndex() 
{ 
... 
$data = Yii::$app->request->post(); 
$reg_res = $data['ColoringForm']['region']; 
... 

私は私のDataControllerに$ reg_resを送りたい:

public function actionShowdata() 
{ 
$reg_res ?? 

は、私はこれをどのように行うことができますか?

答えて

1

アレイデータは、コントローラから別のコントローラに送信することはできませんが、パラメータを使用して送信することができます。

あなたが同じリクエスト内で別々のアクションを実行するには、次の使用できるコード

$this->redirect(array('controller/action', 'param1'=>'value1', 'param2'=>'value2',...) 
+0

を私はyii2での初心者ですが..あなたは私を助けることができます私のコードでそれを実装する? –

+0

は、別のページにリダイレクトせずにデータを送信する可能性がありますか? 私はちょうどデータを送信することを意味します –

+0

あなたはこのようなポスト配列を得るでしょう。 $ data = Yii :: $ app-> request-> post(); $ reg_res = $ data ['ColoringForm'] ['region']; $ this-> redirect(array( 'controller/action'、 'reg_res' => $ reg_res);このパラメータには、パラメータ –

0

以下試してみてください。どのように

Yii::$app->runAction('controller/show-data', ['param1'=>'value1', 'param2'=>'value2']);

+0

は、別のページにリダイレクトせずにデータを送信することは可能ですか?私はちょうどデータを送信することを意味します –

+0

上記はそれを行います。リダイレクトはありません。 – simon

関連する問題