⚝
One Hat Cyber Team
⚝
Your IP:
216.73.216.101
Server IP:
178.33.27.10
Server:
Linux cpanel.dev-unit.com 3.10.0-1160.119.1.el7.x86_64 #1 SMP Tue Jun 4 14:43:51 UTC 2024 x86_64
Server Software:
Apache/2.4.62 (Unix) OpenSSL/1.0.2k-fips
PHP Version:
8.2.25
Buat File
|
Buat Folder
Eksekusi
Dir :
~
/
home
/
id
/
ebook.dev-unit.com
/
app
/
Installer
/
View File Name :
SetupDatabase.php
<?php namespace App\Installer; use Illuminate\Support\Facades\DB; use Illuminate\Support\Facades\Artisan; use Jackiedo\DotenvEditor\Facades\DotenvEditor; class SetupDatabase { public function setup($data) { $this->checkDBConnection($data); $this->setEnvVariables($data); $this->migrateDatabase(); } private function checkDBConnection($data) { $this->setupDatabaseConnectionConfig($data); DB::connection('mysql')->reconnect(); DB::connection('mysql')->getPdo(); } private function setupDatabaseConnectionConfig($data) { config([ 'database.default' => 'mysql', 'database.connections.mysql.host' => $data['host'], 'database.connections.mysql.port' => $data['port'], 'database.connections.mysql.database' => $data['database'], 'database.connections.mysql.username' => $data['username'], 'database.connections.mysql.password' => $data['password'], ]); } private function setEnvVariables($data) { $env = DotenvEditor::load(); $env->setKey('DB_HOST', $data['host']); $env->setKey('DB_PORT', $data['port']); $env->setKey('DB_DATABASE', $data['database']); $env->setKey('DB_USERNAME', $data['username']); $env->setKey('DB_PASSWORD', $data['password']); $env->save(); } private function migrateDatabase() { Artisan::call('migrate', ['--force' => true]); } }