setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
return true;
} catch (PDOException $e) {
return false;
}
}
$dbConnectionSuccess = testDbConnection($dbhost, $dbname, $dbuser, $dbpass);
if ($dbConnectionSuccess) {
$connFileContent = 'setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);' . PHP_EOL;
$connFileContent .= '} catch (PDOException $e) {' . PHP_EOL;
$connFileContent .= ' die("Error connecting to the database: " . $e->getMessage());' . PHP_EOL;
$connFileContent .= '}' . PHP_EOL;
$connFilePath = '../conn/conn.php';
$connFile = fopen($connFilePath, 'w');
fwrite($connFile, $connFileContent);
fclose($connFile);
require_once $connFilePath;
$insertUserQuery = "INSERT INTO `users` (`id`, `username`, `usermail`, `password`, `permissions`) VALUES (?, ?, ?, ?, ?)";
$stmt = $db->prepare($insertUserQuery);
$id = 1;
$username = 'Admin';
$usermail = 'drm@drm.com';
$hashedPassword = '$2y$10$mgPCjxp2i04PkS3RUyD40.7kT5WRdnMuci6eBCb0GY4I..G7kPLZy';
$permissions = 'admin';
$stmt->bindParam(1, $id, PDO::PARAM_INT);
$stmt->bindParam(2, $username, PDO::PARAM_STR);
$stmt->bindParam(3, $usermail, PDO::PARAM_STR);
$stmt->bindParam(4, $hashedPassword, PDO::PARAM_STR);
$stmt->bindParam(5, $permissions, PDO::PARAM_STR);
$stmt->execute();
$createTablesQuery = "
SET SQL_MODE = 'NO_AUTO_VALUE_ON_ZERO';
SET AUTOCOMMIT = 0;
START TRANSACTION;
SET time_zone = '+00:00';
CREATE TABLE `canales` (
`id` int(11) UNSIGNED NOT NULL,
`name` varchar(255) NOT NULL,
`m3u8Dir` varchar(255) NOT NULL,
`tmpDir` varchar(255) NOT NULL,
`keyU` varchar(255) NOT NULL,
`keyID` varchar(255) NOT NULL,
`proxy` varchar(255) NOT NULL,
`useProxy` enum('true','false') NOT NULL,
`url` varchar(255) NOT NULL,
`pidm3u8` int(11) DEFAULT NULL,
`time_started` datetime DEFAULT NULL,
`video` varchar(50) DEFAULT NULL,
`audio` varchar(50) DEFAULT NULL,
`subtitle` varchar(50) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
CREATE TABLE `users` (
`id` int(11) UNSIGNED NOT NULL,
`username` varchar(255) NOT NULL,
`usermail` varchar(255) NOT NULL,
`password` varchar(255) NOT NULL,
`permissions` varchar(255) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
INSERT INTO `users` (`id`, `username`, `usermail`, `password`, `permissions`) VALUES
(1, 'Admin', 'drm@drm.com', ?, 'admin');
ALTER TABLE `canales`
ADD PRIMARY KEY (`id`);
ALTER TABLE `users`
ADD PRIMARY KEY (`id`);
ALTER TABLE `canales`
MODIFY `id` int(11) UNSIGNED NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=10;
ALTER TABLE `users`
MODIFY `id` int(11) UNSIGNED NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=2;
COMMIT;
";
$db->prepare("UPDATE `users` SET `password` = ? WHERE `id` = 1")->execute([$hashedPassword]);
$db->exec($createTablesQuery);
echo '
';
echo '
Installation completed
';
echo '
The database connection details have been saved in the conn.php file.
';
echo '
Login details for the administrator account:
';
echo '
';
echo '- Username: Admin
';
echo '- Email: drm@drm.com
';
echo '- Password: 22333265
';
echo '
';
echo '
';
echo '
Go to Home';
} else {
echo '
';
echo '
Error
';
echo '
Unable to connect to the database. Please check the connection details and try again.
';
echo '
';
}
}
?>