[text] fvbfiufvnef

Viewer

copydownloadembedprintName: fvbfiufvnef
  1. <?php
  2. // Connect to MySQL (replace these values with your actual database credentials)
  3. $host = "localhost";
  4. $username = "root";
  5. $password = "";
  6. $database = "test";
  7.  
  8. $conn = mysqli_connect($host, $username, $password, $database);
  9.  
  10. if (!$conn) {
  11.     die("Connection failed: " . mysqli_connect_error());
  12. }
  13.  
  14. // Create database if it doesn't exist
  15. $sql = "CREATE DATABASE IF NOT EXISTS $database";
  16. mysqli_query($conn, $sql);
  17.  
  18. // Create student table
  19. $sql = "
  20. CREATE TABLE IF NOT EXISTS Student (
  21.     student_id VARCHAR(20) PRIMARY KEY,
  22.     name VARCHAR(255) NOT NULL,
  23.     dob VARCHAR(255) NOT NULL,
  24.     gender ENUM('male', 'female') NOT NULL,
  25.     address TEXT NOT NULL,
  26.     mobile VARCHAR(20) NOT NULL,
  27.     email VARCHAR(255) UNIQUE NOT NULL
  28. );";
  29. mysqli_query($conn, $sql);
  30.  
  31. // Create department table
  32. $sql = "
  33. CREATE TABLE Department (
  34.     department_id INT AUTO_INCREMENT PRIMARY KEY,
  35.     name VARCHAR(255) UNIQUE NOT NULL
  36. );";
  37. mysqli_query($conn, $sql);
  38.  
  39. // Create mapping table
  40. $sql = "
  41. CREATE TABLE IF NOT EXISTS Mapping (
  42.     id INT AUTO_INCREMENT PRIMARY KEY,
  43.     student_id VARCHAR(20) NOT NULL,
  44.     department_id INT NOT NULL,
  45.     UNIQUE KEY (student_id, department_id),
  46.     FOREIGN KEY (student_id) REFERENCES Student(student_id),
  47.     FOREIGN KEY (department_id) REFERENCES Department(department_id)
  48. );";
  49. mysqli_query($conn, $sql);
  50.  
  51.  
  52.  
  53. // Process form submission
  54. if ($_SERVER["REQUEST_METHOD"] == "POST" && isset($_POST['create'])) {
  55.     // Retrieve form data
  56.     $name = $_POST["name"];
  57.     $student_id = $_POST["student_id"];
  58.     $dob = $_POST["dob"];
  59.     $gender = $_POST["gender"];
  60.     $address = $_POST["address"];
  61.     $mobile = $_POST["mobile"];
  62.     $email = $_POST["email"];
  63.     $departments = $_POST["department"];
  64.  
  65.     // Insert student data into the Student table
  66.     $sql = "INSERT INTO Student (student_id, name, dob, gender, address, mobile, email)
  67.             VALUES ('$student_id', '$name', '$dob', '$gender', '$address', '$mobile', '$email')";
  68.  
  69.     if (mysqli_query($conn, $sql) === TRUE) {
  70.         echo "Student record created successfully";
  71.     } else {
  72.         echo "Error creating student record: " . mysqli_error($conn);
  73.     }
  74.  
  75.     $sql = "INSERT IGNORE INTO Department (name) VALUES ('$departments')";
  76.     mysqli_query($conn, $sql);
  77.  
  78.     $sql = "SELECT department_id FROM Department WHERE name='$departments'";
  79.     $result = mysqli_query($conn, $sql);
  80.     $row = mysqli_fetch_assoc($result);
  81.     $departmentId = intval($row['department_id']);
  82.  
  83.  
  84.     // Create Mapping
  85.     $insertMappingQuery = "INSERT INTO Mapping (student_id, department_id) VALUES ('$student_id', '$departmentId')";
  86.     mysqli_query($conn, $insertMappingQuery);
  87. }
  88.  
  89. // Get all Student details
  90. if (
  91.     $_SERVER["REQUEST_METHOD"] == "GET" && isset($_GET['all_students'])
  92. ) {
  93.     $student_id = $_GET["student_id"];
  94.     $sql = "SELECT s.student_id, s.name, s.dob, s.gender, s.address, s.mobile, s.email, GROUP_CONCAT(d.name) AS departments
  95.             FROM Student s
  96.             LEFT JOIN Mapping m ON s.student_id = m.student_id
  97.             LEFT JOIN Department d ON m.department_id = d.department_id
  98.             GROUP BY s.student_id";
  99.  
  100.     $result = mysqli_query($conn, $sql);
  101.  
  102.     $students = array();
  103.     if (mysqli_num_rows($result) > 0) {
  104.         while ($row = mysqli_fetch_assoc($result)) {
  105.             $students[] = $row;
  106.         }
  107.     }
  108.     echo json_encode($students);
  109. }
  110.  
  111. // Get Student dtails by ID
  112. if ($_SERVER["REQUEST_METHOD"] == "GET" && isset($_GET['student_by_id'])) {
  113.     $student_id = $_GET["student_id"];
  114.     $sql = "SELECT s.student_id, s.name, s.dob, s.gender, s.address, s.mobile, s.email, GROUP_CONCAT(d.name) AS departments
  115.             FROM Student s
  116.             LEFT JOIN Mapping m ON s.student_id = m.student_id
  117.             LEFT JOIN Department d ON m.department_id = d.department_id
  118.             WHERE s.student_id = '$student_id'
  119.             GROUP BY s.student_id";
  120.  
  121.     $result = mysqli_query($conn, $sql);
  122.  
  123.     $students = array();
  124.     if (mysqli_num_rows($result) > 0) {
  125.         while ($row = mysqli_fetch_assoc($result)) {
  126.             $students[] = $row;
  127.         }
  128.     }
  129.     echo json_encode($students);
  130. }
  131.  
  132. // Delete Student details by ID
  133. if ($_SERVER["REQUEST_METHOD"] == "POST" && isset($_POST['delete'])) {
  134.     $student_id = $_POST['student_id'];
  135.     // Check if the student ID exists
  136.     $check_student_sql = "SELECT * FROM Student WHERE student_id = '$student_id'";
  137.     $result = mysqli_query($conn, $check_student_sql);
  138.  
  139.     if (mysqli_num_rows($result) > 0) {
  140.         // Student ID exists, proceed with deletion
  141.  
  142.         // Delete mapping data from the Mapping table
  143.         $delete_mapping_sql = "DELETE FROM Mapping WHERE student_id = '$student_id'";
  144.         if (mysqli_query($conn, $delete_mapping_sql)) {
  145.             // Delete student data from the Student table
  146.             $delete_student_sql = "DELETE FROM Student WHERE student_id = '$student_id'";
  147.             if (mysqli_query($conn, $delete_student_sql)) {
  148.                 echo "Student record deleted successfully";
  149.             } else {
  150.                 echo "Error deleting student record: " . mysqli_error($conn);
  151.             }
  152.         } else {
  153.             echo "Error deleting mapping records: " . mysqli_error($conn);
  154.         }
  155.     } else {
  156.         echo "Student ID not found";
  157.     }
  158. }
  159.  
  160. // Update Student details
  161. if ($_SERVER["REQUEST_METHOD"] == "POST" && isset($_POST['update'])) {
  162.     $name = $_POST["name"];
  163.     $student_id = $_POST["student_id"];
  164.     $dob = $_POST["dob"];
  165.     $gender = $_POST["gender"];
  166.     $address = $_POST["address"];
  167.     $mobile = $_POST["mobile"];
  168.     $email = $_POST["email"];
  169.     $departments = $_POST["department"];
  170.  
  171.     // Update student data in the Student table
  172.     $sql = "UPDATE Student SET name='$name', dob='$dob', gender='$gender', address='$address', mobile='$mobile', email='$email' WHERE student_id='$student_id'";
  173.  
  174.     if (mysqli_query($conn, $sql) === TRUE) {
  175.         echo "Student record updated successfully";
  176.     } else {
  177.         echo "Error updating student record: " . mysqli_error($conn);
  178.     }
  179.  
  180.     // Delete existing mapping data from the Mapping table
  181.     $delete_mapping_sql = "DELETE FROM Mapping WHERE student_id='$student_id'";
  182.     mysqli_query($conn, $delete_mapping_sql);
  183.  
  184.     // Insert new mapping data into the Mapping table
  185.     foreach ($departments as $department) {
  186.         $department_query = "SELECT department_id FROM Department WHERE name = '$department'";
  187.         $result = mysqli_query($conn, $department_query);
  188.         $department_row = mysqli_fetch_assoc($result);
  189.         $department_id = $department_row['department_id'];
  190.  
  191.         $sql = "INSERT INTO Mapping (student_id, department_id) VALUES ('$student_id', '$department_id')";
  192.  
  193.         if (mysqli_query($conn, $sql) === FALSE) {
  194.             echo "Error creating mapping record: " . mysqli_error($conn);
  195.         }
  196.     }
  197.  
  198. mysqli_close($conn);
  199. ?>

Editor

You can edit this paste and save as new:


File Description
  • fvbfiufvnef
  • Paste Code
  • 16 Apr-2024
  • 6.9 Kb
You can Share it: