Environment === "Production") ? "localhost" : "192.168.1.190"; $database = (string) $applicationSettings->DatabaseName; $user = (string) $applicationSettings->DatabaseUser; $password = (string) $applicationSettings->DatabasePassword; try { $connection = new PDO( "mysql:host={$host};dbname={$database};charset=utf8mb4", $user, $password, [ PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION, PDO::ATTR_EMULATE_PREPARES => false, PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC, ] ); } catch (PDOException | Exception $e) { echo "Unable to connect to the database."; exit(); } // Get View Files $views = glob("view_*.php"); if (empty($views)) { echo "No views found. Views not created."; exit(); } sort($views); // Create Views $created = 0; $not_created = 0; foreach ($views as $viewFile) { $viewName = basename($viewFile, ".php"); if (!preg_match('/^view_[a-zA-Z0-9_]+$/', $viewName)) { echo "
Invalid view file skipped: " . htmlspecialchars($viewFile, ENT_QUOTES, "UTF-8") . "
"; $not_created++; continue; } $SQL = null; include $viewFile; if (empty($SQL)) { echo "
No SQL found in {$viewFile}. View not created.
"; $not_created++; continue; } try { $connection->exec("DROP VIEW IF EXISTS `{$viewName}`"); $connection->exec($SQL); $created++; echo "
" . htmlspecialchars($viewName, ENT_QUOTES, "UTF-8") . " was created.
"; } catch (PDOException | Exception $e) { $not_created++; echo "
Error creating " . htmlspecialchars($viewName, ENT_QUOTES, "UTF-8") . ".
"; } } echo "
"; echo htmlspecialchars("{$created} views were created. {$not_created} were not created due to errors.", ENT_QUOTES, "UTF-8"); ?>