2017-02-27 15 views
1

私が取り組んでいるCMS用のインストーラを作成しようとしています。 インストーラページは基本的に、データベースホスト、ポート、ユーザー名、パスワード、およびスキーマ名を入力するページです。この入力データを使用して、実際に入力と接続できるかどうかをテストするにはどうすればよいですか?ユーザが入力したユーザ名とパスワードを持つLaravel connec

答えて

1

ユーザー入力をコントローラ機能に入力し、config/datadata.phpを更新することができます。

public function checkDatabaseConnection(Request $request) 
{ 
    //update the config 
    config(['database.connections.mysql' => [ 
     'host'  => $request->host, 
     'username' => $request->username, 
     'password' => $request->password 
    ]]); 

    //Check the credentials by calling PDO 
    try { 
     DB::connection()->getPdo(); 
    } catch (\Exception $e) { 
     return redirect()->back()->withErrors(["connection" => "Could not connect to the database. Please check your input."]); 
    } 
} 

は、あなたのコントローラの上部にuse DBを追加することを忘れないでください:ドライバーと仮定すると、デフォルトでmysqlで、あなたがこれを行うことができます。

+0

ありがとうございました!すでに動作していますが、これは私が見つけたのと同じ解決策です。 – Kaizokupuffball

関連する問題