From ea4becd52d6a37190f851775005b2d6994248d85 Mon Sep 17 00:00:00 2001 From: Bryan Date: Sun, 2 Jun 2019 16:35:02 +0200 Subject: [PATCH] Completed installer --- lib/php/install.php | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/lib/php/install.php b/lib/php/install.php index 0d4c6df..6ef6d0c 100644 --- a/lib/php/install.php +++ b/lib/php/install.php @@ -16,6 +16,18 @@ 'installation_path' => substr ( $_SERVER [ 'SCRIPT_NAME' ], 0, -10 ), ]; file_put_contents ( 'config.json', json_encode ( $config ) ); + try { + $database = new PDO ( "mysql:dbname=" . $config [ 'db' ] [ 'name' ] . ";host=" . $config [ 'db' ] [ 'host' ] . ":" . $config [ 'db' ] [ 'port' ], $config [ 'db' ] [ 'username' ], $config [ 'db' ] [ 'password' ] ); + } + catch ( PDOException $exception ) { + unlink ( "config.json" ); + http_response_code ( 400 ); + header ( 'Content-Type: application/json' ); + echo ( json_encode ( [ 'status' => 400, 'message' => $exception->getMessage ( ) ] ) ); + exit; + } + $query = "CREATE TABLE IF NOT EXISTS `users` ( `ID` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT, `username` VARCHAR(50) NOT NULL COLLATE 'utf8mb4_bin', `password` VARCHAR(128) NOT NULL COLLATE 'utf8mb4_bin', PRIMARY KEY (`ID`) ) COLLATE='utf8mb4_bin' ENGINE=InnoDB; CREATE TABLE IF NOT EXISTS `links` ( `ID` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT, `URL` VARCHAR(50) NOT NULL COLLATE 'utf8mb4_bin', `created_by` BIGINT(20) UNSIGNED NOT NULL, PRIMARY KEY (`ID`), INDEX `links.created_by` (`created_by`), CONSTRAINT `links.created_by` FOREIGN KEY (`created_by`) REFERENCES `users` (`ID`) ON UPDATE CASCADE ON DELETE CASCADE ) COLLATE='utf8mb4_bin' ENGINE=InnoDB;"; + $database->query ( $query ); header ( 'Content-Type: application/json' ); echo ( json_encode ( [ 'status' => 200, 'message' => 'Installation completed!
You will be redirected to the home page in 5 seconds.', 'homelocation' => $config [ 'installation_path' ] ] ) ); exit; @@ -27,6 +39,7 @@ Installer | OpenShorte +