feat : oui je regardes après
continuous-integration/drone/push Build is passing Details

pull/35/head
Jade VAN BRABANDT 1 year ago
parent eba391d3d8
commit 08543cbea3

@ -88,8 +88,8 @@ class ControllerUser
function verifySingleplayer()
{
$_SESSION["Score"]=0;
$_SESSION["PrevTime"]= new DateTime('now');
$_SESSION["Score"] = 0;
$_SESSION["PrevTime"] = new DateTime('now');
$difficulty = $_POST['difficulty'];
$chapter = $_POST['chapter'];
$difficultyIsOk = TRUE;
@ -123,48 +123,60 @@ class ControllerUser
function verifQuestion()
//Only Handdle solo game
{
$_SESSION["CurrTime"]= new DateTime('now');
$_SESSION["CurrTime"] = new DateTime('now');
$answerNumber = $_POST["answer"];
$numQuestion = $_POST["numQuestion"] + 1;
$numQuestion = $_POST["numQuestion"];
if (!($answerNumber == 0 or $answerNumber == 1 or $answerNumber == 2 or $answerNumber == 3)) {
$_SESSION["error"] = "Valeur de choix de réponse invalide";
echo $this->twig->render($this->vues["singleplayer"], [
'questions' => $_SESSION["Questions"],
'numQuestion' => $numQuestion-1,
'numQuestion' => $numQuestion,
]);
} else {
if ($numQuestion > 9) {
var_dump($_SESSION["Score"]);
/// echo $this->twig->render($this->vues["ViewScore"], [
/// 'score' => $_SESSION["Score"],
/// ];
} else {
var_dump($_SESSION["Questions"][$numQuestion - 1]['idanswergood']);
var_dump($_SESSION["Questions"][$numQuestion - 1]['answers'][$answerNumber]['id']);
if ($_SESSION["Questions"][$numQuestion - 1]['idanswergood'] == $_SESSION["Questions"][$numQuestion - 1]['answers'][$answerNumber]['id']) {
$time = $_SESSION["PrevTime"]->diff($_SESSION["CurrTime"]);
$_SESSION["Score"]= $_SESSION["Score"] + 80 + 40*((30-$time->s)/100*10/3);
}
$answerContent = $_SESSION["Questions"][$numQuestion]['answers'][$answerNumber]['content'];
$_SESSION["Questions"][$numQuestion]['playerAnswersContent'] = $answerContent;
if ($_SESSION["Questions"][$numQuestion]['idanswergood'] == $_SESSION["Questions"][$numQuestion]['answers'][$answerNumber]['id']) {
$time = $_SESSION["PrevTime"]->diff($_SESSION["CurrTime"]);
$_SESSION["Score"] = $_SESSION["Score"] + 80 + 40 * ((30 - $time->s) / 100 * 10 / 3);
}
if ($numQuestion <= 2) {
$_SESSION["PrevTime"] = $_SESSION["CurrTime"];
echo $this->twig->render($this->vues["singleplayer"], [
'questions' => $_SESSION["Questions"],
'numQuestion' => $numQuestion,
'numQuestion' => $numQuestion+1,
]);
} else {
foreach ($_SESSION["Questions"] as &$question) {
$answer = $this->mdAnswer->getAnswerByID($question['idanswergood']);
$question['goodAnswersContent'] = $answer['content'];
}
var_dump($_SESSION["Questions"]);
// echo $this->twig->render($this->vues["viewScore"], [
// 'score' => $_SESSION["Score"],
// 'questions' => $_SESSION["Questions"],
// ]);
}
}
}
function passer()
{
$numQuestion = $_POST["numQuestion"] + 1;
if ($numQuestion > 9) {
echo $this->twig->render($this->vues["home"]);
//EN GROS IL FAUT AFFICHER LE SCORE (C'est copilot qui a fait ça, la fin du commentaire j'veux dire)
//Si faut paser un param score de page en page dittes le moi je le ferais dw
} else {
$numQuestion = $_POST["numQuestion"];
if ($numQuestion <= 9) {
$_SESSION["PrevTime"] = $_SESSION["CurrTime"];
echo $this->twig->render($this->vues["singleplayer"], [
'questions' => $_SESSION["Questions"],
'numQuestion' => $numQuestion,
'numQuestion' => $numQuestion + 1,
]);
} else {
foreach ($_SESSION["Questions"] as &$question) {
$answer = $this->mdAnswer->getAnswerByID($question['idAnswerGood']);
$question['GoodAnswersContent'] = $answer['content'];
}
echo $this->twig->render($this->vues["ViewScore"], [
'score' => $_SESSION["Score"],
'questions' => $_SESSION["Questions"],
]);
}
}

@ -12,7 +12,7 @@ class GatewayAnswer
public function addAnswer($answer)
{
$query = "insert into answers(content,idquestion) values (:content,:idquestion);";
$query = "INSERT into answers(content,idquestion) values (:content,:idquestion);";
$this->con->executeQuery(
$query,
array(
@ -24,6 +24,19 @@ class GatewayAnswer
return $answerId;
}
public function getAnswerByID($id)
{
$query = "SELECT * FROM answers WHERE id = :id;";
$this->con->executeQuery(
$query,
array(
':id' => array($id, PDO::PARAM_INT)
)
);
$results = $this->con->getResults();
return $results[0];
}
public function getAnswersByIDQuestions($idQuestions)
{
$query = "SELECT answers.content,answers.id FROM answers, questions WHERE questions.id = :idquestions AND answers.idquestion = questions.id ;";

@ -15,9 +15,15 @@ class ModelAnswer
return $answersId;
}
function getAnswersByIDQuestions($id)
function getAnswerByID($id)
{
$answers = $this->gwAnswer->getAnswersByIDQuestions($id);
$answer = $this->gwAnswer->getAnswerByID($id);
return $answer;
}
function getAnswersByIDQuestions($idQuestion)
{
$answers = $this->gwAnswer->getAnswersByIDQuestions($idQuestion);
return $answers;
}

@ -36,7 +36,7 @@
<div class="col pt-5">
<input type="radio" class="btn-check" name="answer" value="0" id="answer1" autocomplete="off" required>
<label class="btn fs-2 container text-white" for="answer1" style="background-color:blue;">
{{ questions[numQuestion].answers[0].content }}
{{ questions[numQuestion]['answers'][0]['content'] }}
</label>
</div>
<div class="col pt-5">

@ -0,0 +1,31 @@
<!DOCTYPE html>
<html lang="fr">
<html>
<head>
<meta charset=utf-8>
<title>Math'Educ</title>
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.2/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-T3c6CoIi6uLrA9TneNEoa7RxnatzjcDSCmG1MXxSR1GAsXEV/Dwwykc2MPK8M2HN" crossorigin="anonymous">
<link rel="stylesheet" href="css/global.css">
</head>
<body id="bodyStyle">
<p>{{ score }}</p>
<ul>
{{ % for question in questions % }}
<li>
<p>
Question : {{ question['content'] }}
</p>
<p>
Bonne réponse : {{ question['goodAnswersContent'] }}
</p>
<p>
Votre réponse : {{ question['playerAnswersContent'] }}
</p>
</li>
{% endfor %}
</ul>
</body>
</html>
Loading…
Cancel
Save