From 1bdb192724964d757ca36c7f7ec1c6e77ddf453b Mon Sep 17 00:00:00 2001 From: adplantade Date: Wed, 22 Jul 2020 15:13:48 +0200 Subject: [PATCH] Affichage du score et des joueurs l'ayant atteint --- code/data.db | Bin 61440 -> 61440 bytes code/score.php | 56 +++++++++++++++++++++++++++++++------------------ 2 files changed, 36 insertions(+), 20 deletions(-) diff --git a/code/data.db b/code/data.db index 90503130818c3fbbf35b18fc6a76ebde1959585b..7e9cb2723bfe0af04cce69a5ebea56153e9c3fb3 100644 GIT binary patch delta 168 zcmZp8z})bFd4e=!*hCp;)-VP=>yH~#7UXj<@gHE|f53lWv!KBiejhm|4pC7-Mh->B zlG5Um)WqUS(*hPF10w@n19M#?BQ7~cxO^%$c`gP91}6TS4E%5TZ*CTJILogt%nmjX Y**qp8h!|%H!i-G?EDD=hHvF*%0MiC6M*si- delta 32 ocmZp8z})bFd4e>f|3n#QR(}RP=ffLQ7UVBxnV_(lWx}6$0Kvr!R{#J2 diff --git a/code/score.php b/code/score.php index 97d2763..0819a44 100644 --- a/code/score.php +++ b/code/score.php @@ -11,57 +11,73 @@ Votre score est :

$database = new SQLite3("data.db"); if(stristr($_GET['mode'], "p") === FALSE) { - $sql='select max(points) from scores where mode="'.$_GET['mode'].'" and diff="'.$_GET['diff'].'"'; - //$sql='select max(points) from score where game_mode='.$_GET['mode'].'" and difficulty="'.$_GET['diff'].'" and dots_amount='.getCookie("dotsAmount").' and pause='.getCookie("pause"); + $sql='select score, player from score where game_mode="'.$_GET['mode'].'" and difficulty="'.$_GET['diff'].'" and dots_amount='.$_COOKIE["dotsAmount"].' and pause='.$_COOKIE["pause"].' and score=(select min(score) from score)'; } else { - $sql='select min(points) from scores where mode="'.$_GET['mode'].'" and diff="'.$_GET['diff'].'"'; - //$sql='select max(points) from score where game_mode='.$_GET['mode'].'" and difficulty="'.$_GET['diff'].'" and dots_amount='.getCookie("dotsAmount").' and pause='.getCookie("pause"); + $sql='select score, player from score where game_mode="'.$_GET['mode'].'" and difficulty="'.$_GET['diff'].'" and dots_amount='.$_COOKIE["dotsAmount"].' and pause='.$_COOKIE["pause"].' and score=(select max(score) from score)'; } $result = $database->query($sql); $a=$result->fetchArray(); + + if($a[0]==null) { echo "Vous avez le premier score de ce mode de jeu."; } else { - echo "Le record est ".$a[0]; + $phrase="Le record est ".$a[0].", tenu par ".$a["player"]; + while ($row = $result->fetchArray()) { + $phrase=$phrase.", ".$row["player"]; + } + echo $phrase; } ?>
query($sqlScore); + $result = $database->query($sqlScore); // on prend le meilleur score du joueur $data = $result->fetchArray()[0]; - if($data==null) + + if($data==null) // Le joueur n'a pas encore de score enregistré { echo "Ceci est votre première partie dans ce mode de jeu."; - $sql='insert into scores values("'.$_GET['pseudo'].'","'.$_GET['mode'].'","'.$_GET['diff'].'",date("now"),'.$_GET['pts'].')'; - $database->query($sql); + + $sql='select count(*) from game where game_mode="'.$_GET['mode'].'" and difficulty="'.$_GET['diff'].'" and dots_amount='.$_COOKIE["dotsAmount"].' and pause='.$_COOKIE["pause"]; + $result = $database->query($sql); + + if($result->fetchArray()[0]==0) // Si le mode de jeu 'nest pas déjà dans la base, on l'ajoute + { + $sql='insert into game values("'.$_GET['diff'].'","'.$_GET['mode'].'","---",'.$_COOKIE["dotsAmount"].','.$_COOKIE["pause"].')'; + } + + $sql='insert into score values("'.$_GET['pseudo'].'","'.$_GET['diff'].'","'.$_GET['mode'].'",'.$_COOKIE["dotsAmount"].','.$_COOKIE["pause"].',date("now"),'.$_GET['pts'].')'; + $database->query($sql); // enregistrement du score du joueur } - else + else // Le joueur a un score enregistré, vérification s'il dépasse son record { - if($data>$_GET['pts']) + $result = $database->query($sqlScore)->fetchArray()[0]; + //Si le joueur a un meilleur score (selon le critère du mode), mise à jour + if(($data<$_GET['pts'] && stristr($_GET['mode'], "p") === FALSE) || ($data>$_GET['pts'] && stristr($_GET['mode'], "p") !== FALSE)) { - $sql="update scores set points='".$_GET['pts']."',date=date('now') where player='".$_GET['pseudo']."' and mode='".$_GET['mode']."' and diff='".$_GET['diff']."'"; + $sql="update score set score=".$_GET['pts'].",date=date('now') where player='".$_GET['pseudo']."' and game_mode='".$_GET['mode']."' and difficulty='".$_GET['diff']."' and dots_amount=".$_COOKIE["dotsAmount"]." and pause=".$_COOKIE["pause"]; $database->query($sql); + + $result=$data; } - $result = $database->query($sqlScore); - echo "Votre record est ".$result->fetchArray()[0]; + echo "Votre record est ".$result; } } ?>