From 033eac0735e30f187cf1ca87a16c80a619fbde35 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Georges=20Dup=C3=A9ron?= Date: Wed, 16 Mar 2011 10:58:14 +0100 Subject: [PATCH] Score pour chaque mot dans le serveur. --- code/serveur/php/pticlic.php | 5 ++++- code/serveur/php/server.php | 10 ++++++++-- 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/code/serveur/php/pticlic.php b/code/serveur/php/pticlic.php index 099cc31..7b645ac 100644 --- a/code/serveur/php/pticlic.php +++ b/code/serveur/php/pticlic.php @@ -542,10 +542,12 @@ function setGame($user, $pgid, $gid, $answers) $res = $db->query("SELECT num, difficulty, totalWeight, probaR1, probaR2, probaR0, probaTrash FROM game_cloud WHERE gid = $gid;"); $gameScore = 0; $scores = array(); + $nbScores = 0; while ($row = $res->fetchArray()) { - $num = $row['num']; + $num = intval($row['num']); + $nbScores = max($nbScores, $num); if (!isset($answers[$num])) { throw new Exception("Cette requête \"Set partie\" ne donne pas de réponse (une relation) pour le mot numéro $num de la partie.", 5); } @@ -572,6 +574,7 @@ function setGame($user, $pgid, $gid, $answers) $db->exec("commit;"); $scores['total'] = $gameScore; + $scores['nb] = $nbScores; return $scores; } diff --git a/code/serveur/php/server.php b/code/serveur/php/server.php index f86f8be..efb594d 100644 --- a/code/serveur/php/server.php +++ b/code/serveur/php/server.php @@ -72,8 +72,14 @@ function main() // au lieu d'envoyer $_GET en entier, mais on ne connaît pas leur nom à l'avance. $scores = setGame($user, intval($_GET['pgid']), intval($_GET['gid']), $_GET); // On renvoie une nouvelle partie pour garder le client toujours bien alimenté. - echo "{\"score\":".$scores['total'].",\"newGame\":"; - json_encode("".game2json($user, randomGame())); + echo "{\"scoreTotal\":".$scores['total']; + echo ',"scores":[' + for (i = 0; i < $scores['nb']; i++) { + if (i != 0) echo ','; + echo $scores[i]; + } + echo "],\"newGame\":"; + echo json_encode("".game2json($user, randomGame())); echo "}"; } else { throw new Exception("Commande inconnue", 2);