2017-02-27 1 views
1

나는 일하고있는 CMS에 대한 일종의 설치 프로그램을 만들려고합니다. 설치 프로그램 페이지는 기본적으로 사용자가 데이터베이스 호스트, 포트, 사용자 이름, 암호 및 스키마 이름을 입력하는 페이지입니다. 이 입력 된 데이터를 사용하여 실제로 입력에 연결할 수 있는지 어떻게 테스트 할 수 있습니까?Laravel connec 사용자가 입력 한 사용자 이름과 암호로 데이터베이스에

답변

1

사용자 입력을 컨트롤러 기능으로 가져와 config/datadata.php을 업데이트 할 수 있습니다. 드라이버를 가정하면 기본적으로 mysql, 당신은이 작업을 수행 할 수 있습니다

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를 추가하는 것을 잊지 마십시오.

+0

감사합니다. 이미 작동하고 있지만, 이것은 나 자신을 발견 한 것과 같은 해결책이며 작동합니다. 어쨌든 고마워요. – Kaizokupuffball

관련 문제