예제 #1
0
function insertNewPlayer($name, $score, $game)
{
    $Joueur = array("_id" => getNextID(), "pseudo" => $name, "jeux" => array(array("scores" => $score, "name" => $game, "badges" => array())));
    returnConnection()->Maets->Joueurs->insert($Joueur);
}
$urlExploded = explode("/", $_SERVER['REQUEST_URI']);
if (count($urlExploded) == 3 && strtolower($urlExploded[1]) == 'scores') {
    $nomDuJeu = $urlExploded[count($urlExploded) - 1];
    $data = json_decode(file_get_contents("php://input"), true);
    $user = $data['player'];
    $score = $data['score'];
    //$user = '******';
    //$score = 665;
    $result = returnConnection()->Maets->Joueurs->findOne(array("pseudo" => $user));
    if (is_null($result)) {
        insertNewPlayer($user, $score, $nomDuJeu);
    } else {
        $scoreJeu = 0;
        $lesJeux = $result['jeux'];
        if (!is_null($lesJeux)) {
            foreach ($lesJeux as $jeu) {
                if ($jeu['name'] == $nomDuJeu) {
                    $scoreJeu = $jeu['scores'];
                }
            }
        }
        if (!in_array($nomDuJeu, $result)) {
            if ($scoreJeu < $score) {
                returnConnection()->Maets->Joueurs->update(array("pseudo" => $user, "jeux.name" => $nomDuJeu), array('$set' => array("jeux.\$.scores" => $score)));
            }
        } else {
예제 #2
0
파일: addStats.php 프로젝트: Jochaz/TPNoSQL
function insertNewPlayer($name, $badge, $game)
{
    $Joueur = array("_id" => getNextID(), "pseudo" => $name, "jeux" => array(array("scores" => 0, "name" => $game, "badges" => array(array("name" => $badge)))));
    returnConnection()->Maets->Joueurs->insert($Joueur);
}
$urlExploded = explode("/", $_SERVER['REQUEST_URI']);
if (count($urlExploded) == 3 && strtolower($urlExploded[1]) == 'stats') {
    $nomDuJeu = $urlExploded[count($urlExploded) - 1];
    $data = json_decode(file_get_contents("php://input"), true);
    $user = $data['player'];
    $badge = $data['badge'];
    $player = getUser($user);
    if (is_null($player)) {
        //Si l'utilisateur n'existe pas, on insert
        echo 'insert';
        insertNewPlayer($user, $badge, $nomDuJeu);
    } else {
        //Si l'utilisateur existe, on regarde si il a déjà joué au jeu
        $lesJeux = $player['jeux'];
        $trouve = false;
        if (!is_null($lesJeux)) {
            foreach ($lesJeux as $jeu) {
                if ($jeu['name'] == $nomDuJeu) {
                    $trouve = true;
                }
            }
        }
        if (!$trouve) {
            echo 'ajout jeu et badge';
            //Si le joueur a jamais jouer au jeu alors on ajoute le badge associé
            returnConnection()->Maets->Joueurs->update(array("pseudo" => $user), array('$push' => array("jeux" => array("scores" => 0, "name" => $nomDuJeu, "badges" => array(array("name" => $badge))))));