2016-11-08 3 views
0

送信した後、ユーザーがフォームページに何らかのエラーでリダイレクトしたいとしましょう。私は私のコントローラにこの方法を持っています。PHPメソッドチェインを使用してリダイレクトしますか?

return redirect('create')->withErrors($errors)->withInputs($inputs); 

ここで、新しいリダイレクトオブジェクトを返すリダイレクト関数という名前のリダイレクト関数があります。

function redirect($fileName) 
{ 
return new Redirect($fileName); 
} 

、ここでリダイレクトクラスのsturcture

class Redirect 
{ 

    public function __construct($fileName) 
    { 
    header("Location: " . $fileName); 

    return $this; 
    } 


    public function withErros($errors) 
    { 
    session_start(); 
    $_SESSION['errors'] = $errors; 

    return $this; 
    } 



    public function withInputs($inputs) 
    { 
    session_start(); 
    $_SESSION('inputs') = $inputs; 

    return $this; 
    } 
} 

最初の連鎖方法は、(withErrors)が正しく実行されていると私は私の見解では、エラーを表示することができます。しかし、2番目のもの(withInputs)は実行されません。私はそれがPHPのヘッダー機能のためだと思う。 誰かが私を助けることができますか?

+0

それで '$ _SESSION ['inputs']' –

+0

'withErros'は 'withErrors'でなければなりません。 – Barmar

+0

いいえ、私がここに入力したときはちょうどタイプミスでした。 –

答えて

1

これは解決策です。

+0

ありがとうございます。 –

関連する問題