Add: php server files for timer

This commit is contained in:
2018-12-13 00:36:48 +09:00
parent edbd4743af
commit 537b0c1db1
10 changed files with 374 additions and 88 deletions
@@ -0,0 +1,78 @@
<?php
header("Content-Type: application/json");
$maestro_id = $_POST["MaestroID"];
$player_id = $_POST["PlayerID"];
$default_start_time = $_POST["DefaultStartTime"];
// echo $maestro_id." / ".$player_id;
// if($default_start_time === null)
// $default_start_time = 60 * 60; // 60 min * 60 sec
include "./../lib/send_reply_json.php";
include "./../setup/connect_db.php";
$start_time = $default_start_time;
$left_time = null;
$saved_date_time = null;
// get license_time data
$time_data = get_time_data($maestro_id, $player_id);
// set_data("timeData", $time_data);
// if license_time data is not exist
// then make new license_time data
if($time_data["StartTime"] == null) {
insert_default_time_data($maestro_id, $player_id, $default_start_time);
$start_time = $default_start_time;
} else {
$start_time = $time_data["StartTime"];
$left_time = $time_data["LeftTime"];
$saved_date_time = $time_data["SavedDateTime"];
}
// send license_time data back to client
set_data("startTime", $start_time);
set_data("leftTime", $left_time);
set_data("savedDateTime", $saved_date_time);
send_result_success();
exit;
function get_time_data($maestro_id, $player_id) {
global $db_conn;
$query = "
SELECT StartTime, LeftTime, SavedDateTime
FROM license_time
WHERE MaestroID = ? AND PlayerID = ?
";
$stmt = $db_conn->prepare($query);
$stmt->bind_param("ii", $maestro_id, $player_id);
$stmt->execute();
$stmt->bind_result($start_time, $left_time, $saved_date_time);
$stmt->fetch();
$stmt->close();
$license_time["StartTime"] = $start_time;
$license_time["LeftTime"] = $left_time;
$license_time["SavedDateTime"] = $saved_date_time;
return $license_time;
}
function insert_default_time_data($maestro_id, $player_id, $default_start_time) {
global $db_conn;
$query = "
INSERT INTO license_time (MaestroID, PlayerID, StartTime)
VALUES (?, ?, ?);
";
$stmt = $db_conn->prepare($query);
$stmt->bind_param("iii", $maestro_id, $player_id, $default_start_time);
$stmt->execute();
}
?>
@@ -0,0 +1,49 @@
<?php
header('Content-Type: application/json');
$maestro_id = $_POST["MaestroID"];
$player_id = $_POST["PlayerID"];
$left_time = $_POST["LeftTime"];
// echo $maestro_id." / ".$player_id;
include "./../lib/send_reply_json.php";
include "./../setup/connect_db.php";
if($left_time == 0)
reset_left_time($maestro_id, $player_id);
else
update_left_time($maestro_id, $player_id, $left_time);
send_result_success();
exit;
function reset_left_time($maestro_id, $player_id) {
global $db_conn;
$query = "
UPDATE license_time
SET LeftTime = null, SavedDateTime = null
WHERE MaestroID = ? AND PlayerID = ?
";
$stmt = $db_conn->prepare($query);
$stmt->bind_param('ii', $maestro_id, $player_id);
$stmt->execute();
}
function update_left_time($maestro_id, $player_id, $left_time) {
global $db_conn;
$query = "
UPDATE license_time
SET LeftTime = ?, SavedDateTime = NOW()
WHERE MaestroID = ? AND PlayerID = ?
";
$stmt = $db_conn->prepare($query);
$stmt->bind_param('iii', $left_time, $maestro_id, $player_id);
$stmt->execute();
}
?>
@@ -0,0 +1,33 @@
<?php
header('Content-Type: application/json');
$maestro_id = $_POST["MaestroID"];
$player_id = $_POST["PlayerID"];
$start_time = $_POST["StartTime"];
// echo $maestro_id." / ".$player_id;
include "./../lib/send_reply_json.php";
include "./../setup/connect_db.php";
update_start_time($maestro_id, $player_id, $start_time);
send_result_success();
exit;
function update_start_time($maestro_id, $player_id, $start_time) {
global $db_conn;
$query = "
UPDATE license_time
SET StartTime = ?
WHERE MaestroID = ? AND PlayerID = ?
";
$stmt = $db_conn->prepare($query);
$stmt->bind_param('iii', $start_time, $maestro_id, $player_id);
$stmt->execute();
}
?>
+23
View File
@@ -0,0 +1,23 @@
CREATE TABLE license_time (
LicenseTimeID INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,
MaestroID INT UNSIGNED NOT NULL,
PlayerID INT UNSIGNED NOT NULL,
StartTime INT UNSIGNED NOT NULL,
LeftTime INT NOT NULL,
SavedDateTime DATETIME NOT NULL,
FOREIGN KEY (MaestroID) REFERENCES maestro(MaestroID),
FOREIGN KEY (PlayerID) REFERENCES player(PlayerID)
);
CREATE TABLE license_score (
LicenseScoreID INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,
MaestroID INT UNSIGNED NOT NULL,
PlayerID INT UNSIGNED NOT NULL,
SubjectName CHAR(50) NOT NULL,
Score INT UNSIGNED NOT NULL,
ScoreDateTime DATETIME NOT NULL,
FOREIGN KEY (MaestroID) REFERENCES maestro(MaestroID),
FOREIGN KEY (PlayerID) REFERENCES player(PlayerID)
);