diff --git a/admin.php b/admin.php index 09f1d57..14d6d7d 100644 --- a/admin.php +++ b/admin.php @@ -5,6 +5,8 @@ require_once 'db/config.php'; // Handle form submission for adding a new course if ($_SERVER['REQUEST_METHOD'] === 'POST' && isset($_POST['add_course'])) { $courseName = trim($_POST['courseName']); + $hole_count = filter_input(INPUT_POST, 'hole_count', FILTER_VALIDATE_INT); + $tournament_date = $_POST['tournament_date']; $pars = []; $isValid = true; @@ -13,6 +15,10 @@ if ($_SERVER['REQUEST_METHOD'] === 'POST' && isset($_POST['add_course'])) { $isValid = false; } + if (empty($tournament_date)) { + $tournament_date = null; + } + for ($i = 1; $i <= 18; $i++) { $par_value = filter_input(INPUT_POST, 'par_hole_' . $i, FILTER_VALIDATE_INT); if ($par_value === false || $par_value < 1 || $par_value > 7) { @@ -26,9 +32,10 @@ if ($_SERVER['REQUEST_METHOD'] === 'POST' && isset($_POST['add_course'])) { if ($isValid) { try { $pdo = db(); - $sql = "INSERT INTO courses (name, par_hole_1, par_hole_2, par_hole_3, par_hole_4, par_hole_5, par_hole_6, par_hole_7, par_hole_8, par_hole_9, par_hole_10, par_hole_11, par_hole_12, par_hole_13, par_hole_14, par_hole_15, par_hole_16, par_hole_17, par_hole_18) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)"; + $sql = "INSERT INTO courses (name, hole_count, tournament_date, par_hole_1, par_hole_2, par_hole_3, par_hole_4, par_hole_5, par_hole_6, par_hole_7, par_hole_8, par_hole_9, par_hole_10, par_hole_11, par_hole_12, par_hole_13, par_hole_14, par_hole_15, par_hole_16, par_hole_17, par_hole_18) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)"; $stmt = $pdo->prepare($sql); - $stmt->execute(array_merge([$courseName], $pars)); + $params = array_merge([$courseName, $hole_count, $tournament_date], $pars); + $stmt->execute($params); $_SESSION['success_message'] = "Course '{$courseName}' added successfully!"; header("Location: admin.php"); exit; @@ -41,7 +48,7 @@ if ($_SERVER['REQUEST_METHOD'] === 'POST' && isset($_POST['add_course'])) { // Fetch existing courses try { $pdo = db(); - $stmt = $pdo->query("SELECT id, name FROM courses ORDER BY name"); + $stmt = $pdo->query("SELECT id, name, hole_count, tournament_date FROM courses ORDER BY name"); $courses = $stmt->fetchAll(); } catch (PDOException $e) { $courses = []; @@ -125,6 +132,20 @@ try { +
+
+ + +
+
+ + +
+
+
Par Values
@@ -144,16 +165,20 @@ try { Course Name + Holes + Tournament Date Action - No courses found. + No courses found. + + diff --git a/db/setup.php b/db/setup.php index e0cb0ca..f24f1a8 100644 --- a/db/setup.php +++ b/db/setup.php @@ -25,6 +25,8 @@ try { par_hole_16 INT NOT NULL, par_hole_17 INT NOT NULL, par_hole_18 INT NOT NULL, + hole_count INT NOT NULL DEFAULT 18, + tournament_date DATE, created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ) ");