-
Notifications
You must be signed in to change notification settings - Fork 1
/
save_table.php
83 lines (75 loc) · 3.35 KB
/
save_table.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
<?php
// Retrieve the JSON data from the POST request
$jsonData = $_POST['data'];
$filiere = $_POST['filiere'];
$semestre=$_POST['semestre'];
// Decode the JSON data to convert it back to a PHP array
$tableData = json_decode($jsonData, true);
// Database connection configuration
$host = 'localhost';
$database = 'backend';
$username = 'root';
$password = '';
try{
// Create a new PDO instance for database connection
$db = new PDO("mysql:host=$host;dbname=$database;charset=utf8mb4", $username, $password);
$check = "SELECT COUNT(*) FROM emploie WHERE filiere = :filiere_nom AND semestre = :semestre";
$checking = $db->prepare($check);
$checking->bindParam(':filiere_nom', $filiere);
$checking->bindParam(':semestre', $semestre);
$checking->execute();
$rowCount = $checking->fetchColumn();
// If data already exists, display a message
if ($rowCount > 0) {
$delete="DELETE FROM emploie WHERE filiere= :filiere AND semestre= :semestre ";
$deleting=$db->prepare($delete);
$deleting->bindParam(':filiere',$filiere);
$deleting->bindParam(':semestre',$semestre);
$deleting->execute();
foreach ($tableData as $date => $colone) {
// Loop through the modules array within each date
foreach ($colone as $seance=> $module) {
// Check if the module starts with 'M' and the index is numeric
// Prepare the SQL statement for inserting or updating data into your_table_name
$sql = "INSERT INTO emploie (filiere, semestre, date,seance, module)
values( :filiere_nom, :semestre, :date,:seance,:module_nom)
";
$statement = $db->prepare($sql);
// Bind the parameter values to the SQL statement
$statement->bindParam(':filiere_nom', $filiere);
$statement->bindParam(':semestre', $semestre);
$statement->bindParam(':seance',$seance);
$statement->bindParam(':module_nom', $module);
$statement->bindParam(':date', $date);
// Execute the SQL statement
$statement->execute();
}
}
} else {
foreach ($tableData as $date => $colone) {
// Loop through the modules array within each date
foreach ($colone as $seance=> $module) {
// Check if the module starts with 'M' and the index is numeric
// Prepare the SQL statement for inserting or updating data into your_table_name
$sql = "INSERT INTO emploie (filiere, semestre, date,seance, module)
values( :filiere_nom, :semestre, :date,:seance,:module_nom)
";
$statement = $db->prepare($sql);
// Bind the parameter values to the SQL statement
$statement->bindParam(':filiere_nom', $filiere);
$statement->bindParam(':semestre', $semestre);
$statement->bindParam(':seance',$seance);
$statement->bindParam(':module_nom', $module);
$statement->bindParam(':date', $date);
// Execute the SQL statement
$statement->execute();
}
}
}
}catch (PDOException $e) {
echo 'Error: ' . $e->getMessage();
}
// Send a response back to the client if needed
// For example, you can echo a success message
echo 'Data saved successfully';
?>