Guest User

Untitled

a guest
Mar 24th, 2019
76
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 3.60 KB | None | 0 0
  1. <?php
  2.     $dbServername = "localhost";
  3.     $dbUsername = "root";
  4.     $dbPassword = "";
  5.     $dbName = "assignment2";
  6.  
  7.     $conn = mysqli_connect($dbServername, $dbUsername, $dbPassword, $dbName)
  8. ?>
  9.  
  10. <!DOCTYPE html>
  11. <html>
  12. <head>
  13.     <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/css/bootstrap.min.css" integrity="sha384-MCw98/SFnGE8fJT3GXwEOngsV7Zt27NXFoaoApmYm81iuXoPkFOJwJ8ERdknLPMO" crossorigin="anonymous">
  14.     <title>Assignment 2</title>
  15. </head>
  16.  
  17. <body style="margin: 2%;">
  18.     <form method="post">
  19.         Choose a class:
  20.         <select name="course">
  21.             <option value="creative_cupcakes">Creative Cupcakes</option>
  22.             <option value="digital_photography">Digital Photography</option>
  23.             <option value="family_history">Family History for Beginners</option>
  24.             <option value="acrylic_painting">Fundamentals of Acrylic Painting</option>
  25.             <option value="holiday_french">Holiday French</option>
  26.         </select>
  27.         <br />
  28.         <input type="submit" value="Select">
  29.     </form>
  30.     <br />
  31.  
  32.      <?php
  33.         // If the user's picked a course, show the next form
  34.         if (isset($_POST['course'])) {
  35.             $title = $_POST["course"];
  36.             $GLOBALS["course"] = $title;
  37.             // Grab the selected course for the slots where capacity is above 0
  38.             $sql = "SELECT * FROM courses WHERE title='$title' AND capacity > 0";
  39.             $result = mysqli_query($conn, $sql);
  40.  
  41.             // Render the form for each slot
  42.             echo "<form method='post'> Choose a timeslot for ".$title;
  43.             echo "<br />";
  44.             while($row = mysqli_fetch_assoc($result)) {
  45.                 echo "<input type='radio' name='slot' value='".$row['slot']."'>";
  46.                 echo $row['slot']." - ".$row['capacity']." spaces left";
  47.                 echo "</input> <br/>";
  48.             }
  49.             echo "<input type='hidden' name='course' value='".$title."'>";
  50.             echo "<br/ > Name: <input type='text' name='name'> <br />";
  51.             echo "Phone Number: <input type='text' name='number'> <br /> <br />";
  52.             echo "<input type='submit' value='Submit'> </form>";
  53.         }
  54.     ?>
  55.  
  56.     <?php
  57.         // If the user's picked a slot, run the confirmation
  58.         if (isset($_POST['name']) && isset($_POST['number']) && isset($_POST['slot'])) {
  59.             $course = $_POST['course'];
  60.             $name = $_POST['name'];
  61.             $number = $_POST['number'];
  62.             $slot = $_POST['slot'];
  63.             // Validate name
  64.             if (ereg("[\sa-zA-z'-]", $name)) {
  65.                 // Validate number
  66.                 if (is_numeric($number)) {
  67.                     // Insert new booking
  68.                     $sql = "INSERT INTO bookings (course, name, number, slot) VALUES ('$course', '$name', $number, '$slot')";
  69.                     mysqli_query($conn, $sql);
  70.  
  71.                     // Update existing capacity
  72.                     $sql = "SELECT capacity FROM courses WHERE title='$title' && slot='$slot' LIMIT 1";
  73.                     $result = mysqli_query($conn, $sql);
  74.                     $row = mysqli_fetch_assoc($result);
  75.                     $capacity = $row['capacity'] - 1;
  76.                     $sql = "UPDATE courses SET capacity=$capacity WHERE title='$title' && slot='$slot'";
  77.                     mysqli_query($conn, $sql);
  78.  
  79.                     echo "Booking successful!";
  80.                 } else {
  81.                     echo "Invalid number";
  82.                 }
  83.             } else {
  84.                 echo "Invalid name";
  85.             }
  86.         }
  87.     ?>
  88. </body>
  89. </html>
Add Comment
Please, Sign In to add comment