Fix: getHighestRecord -> getHighestRecordForWriting

This commit is contained in:
2019-07-15 22:52:13 +09:00
parent cfb843f91c
commit 3cb72799d4
6 changed files with 246 additions and 30 deletions
+59
View File
@@ -0,0 +1,59 @@
<?php
header('Content-Type: application/json');
// get parameters from client
$command = $_POST["command"];
include "./../lib/json_builder.php";
include "./../lib/connect_db.php";
$jsonBuilder = new JsonBuilder();
$dbConnector = new DBConnector();
$isConnected = $dbConnector->connectDB();
if (!$isConnected) {
$jsonBuilder->setErrorMessage("DB connection : failed");
$jsonBuilder->sendResultFail();
exit;
}
const MAESTRO_ID = 3; // 삼화초
const PLAYER_ID = 35; // 박지상
const WRITING_ID = 1;
const WRITING_RECORD = 123.456;
if ($command === "addTypingExamHighestRecord") {
include "./db_method_container.php";
include "./typing_exam_collection.php";
$typingExam = new TypingExamCollection($dbConnector->getMysqli());
$typingExam->addHighestRecord(MAESTRO_ID, PLAYER_ID, WRITING_ID, WRITING_RECORD);
// $typingExamHighestRecordData = $typingExam->getHighestRecordForWriting(MAESTRO_ID, PLAYER_ID, WRITING_ID);
// $jsonBuilder->setData("typingExamHighestRecordData", $typingExamHighestRecordData);
} elseif ($command === "updateTypingExamHighestRecord") {
include "./db_method_container.php";
include "./typing_exam_collection.php";
$typingExam = new TypingExamCollection($dbConnector->getMysqli());
$typingExamHighestRecordData = $typingExam->getHighestRecordForWriting(MAESTRO_ID, PLAYER_ID, WRITING_ID);
// $jsonBuilder->setData("typingExamHighestRecordData", $typingExamHighestRecordData);
$typingExam->updateHighestRecord($typingExamHighestRecordData["typingExamHighestRecordID"], WRITING_RECORD + 10);
// $typingExamHighestRecordData = $typingExam->getHighestRecordForWriting(MAESTRO_ID, PLAYER_ID, WRITING_ID);
// $jsonBuilder->setData("updateTypingExamHighestRecord", $typingExamHighestRecordData);
} elseif ($command === "getTypingExamHigestRecord") {
include "./db_method_container.php";
include "./typing_exam_collection.php";
$typingExam = new TypingExamCollection($dbConnector->getMysqli());
$typingExamHighestRecordData = $typingExam->getHighestRecordForWriting(MAESTRO_ID, PLAYER_ID, WRITING_ID);
$jsonBuilder->setData("typingExamHighestRecordData", $typingExamHighestRecordData);
}
$jsonBuilder->sendResultSuccess();
?>
+27 -6
View File
@@ -80,7 +80,7 @@ class TypingExamCollection extends DBMethodContainer
SET HighestRecord = ?, RecordDateTime = NOW()
WHERE TypingExamHighestRecordID = ?";
$stmt = $this->mysqli->prepare($query);
$stmt->bind_param("id", $typingExamHighestRecordID, $record);
$stmt->bind_param("di", $record, $typingExamHighestRecordID);
$stmt->execute();
$stmt->close();
}
@@ -105,21 +105,42 @@ class TypingExamCollection extends DBMethodContainer
return $result;
}
public function getHighestRecord($maestroID, $playerID)
public function getHighestRecordForWriting($maestroID, $playerID, $writingID)
{
$query = "
SELECT WritingID, HighestRecord
SELECT TypingExamHighestRecordID, WritingID, HighestRecord
FROM typing_exam_highest_record
WHERE MaestroID = ? AND PlayerID = ? AND WritingID = ?";
$stmt = $this->mysqli->prepare($query);
$stmt->bind_param("iii", $maestroID, $playerID, $writingID);
$stmt->execute();
$stmt->bind_result($typingExamHighestRecordID, $writingID, $highestRecord);
$stmt->fetch();
$recordData = array();
$recordData["typingExamHighestRecordID"] = $typingExamHighestRecordID;
$recordData["highestRecord"] = $highestRecord;
$stmt->close();
return $recordData;
}
public function getHighestRecordArrayForAllWriting($maestroID, $playerID)
{
$query = "
SELECT TypingExamHighestRecordID, WritingID, HighestRecord
FROM typing_exam_highest_record
WHERE MaestroID = ? AND PlayerID = ?";
$stmt = $this->mysqli->prepare($query);
$stmt->bind_param("ii", $maestroID, $playerID);
$stmt->bind_param("iii", $maestroID, $playerID);
$stmt->execute();
$stmt->bind_result($writingID, $highestRecord);
$stmt->bind_result($typingExamHighestRecordID, $writingID, $highestRecord);
$resultArray = array();
while($stmt->fetch()) {
$rowArray = array();
$rowArray["writingID"] = $writingID;
$rowArray["typingExamHighestRecordID"] = $typingExamHighestRecordID;
// $rowArray["writingID"] = $writingID;
$rowArray["highestRecord"] = $highestRecord;
array_push($resultArray, $rowArray);
}