Show sourcecode
The following files exists in this folder. Click to view.
admin.php
bilder/
checkUpdates.php
confirmPassword.php
confirmSignIn.php
createadmin.php
endScreen.php
getBoard.php
getChat.php
getHand.php
getTurnPlayer.php
lobbies.php
logIn.php
play.php
playCard.php
signIn.php
start.php
startsida.php
style.css
tables.php
update.php
updatePassword.php
waitInfo.php
waitingRoom.php
checkUpdates.php
99 lines UTF-8 Windows (CRLF)
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
<?php
/** @var PDO $dbconn */
include ("../dbconnection.php");
if (isset($_GET["gameid"]) && isset($_GET["board"]) && isset($_GET["players"])) {
try {
$gameid = $_GET["gameid"];
$board = $_GET["board"];
$players = explode("-", $_GET["players"]);
$sql = "SELECT * FROM JassGames WHERE gameid=?";
$stmt = $dbconn->prepare($sql);
$data = array($gameid);
$stmt->execute($data);
if ($stmt->fetch(PDO::FETCH_ASSOC)) {
$updateBoard = false;
$updateHands = false;
// Kollar om någon spelare har kort på handen
$sql = "SELECT * FROM JassPlayerCards
LEFT JOIN GamePlayers ON JassPlayerCards.playerid=GamePlayers.playerid
WHERE GamePlayers.gameid=? AND JassPlayerCards.position=?";
$stmt = $dbconn->prepare($sql);
$data = array($gameid, "hand");
$stmt->execute($data);
// Om ingen har det, avsluta spelet
if (!$stmt->fetch(PDO::FETCH_ASSOC)) {
echo "4";
} else {
// Annars, kolla om något ska uppdateras
// Hämtar alla kort på brädet
$sql = "SELECT * FROM JassPlayedCards
LEFT JOIN GamePlayers ON JassPlayedCards.gameplayerid=GamePlayers.gameplayerid
WHERE GamePlayers.gameid=?";
$stmt = $dbconn->prepare($sql);
$data = array($gameid);
$stmt->execute($data);
// Räkna hur många kort som finns på brädet
$boardCount = 0;
while ($card = $stmt->fetch(PDO::FETCH_ASSOC)) {
$boardCount++;
}
// Om antalet kort på brädet har ändrats ska den uppdateras
if ($boardCount != $board) {
$updateBoard = true;
}
// Hämtar spelare i spelet
$sql = "SELECT * FROM GamePlayers WHERE gameid=?";
$stmt = $dbconn->prepare($sql);
$data = array($gameid);
$stmt->execute($data);
$currentPlayer = 0;
while ($player = $stmt->fetch(PDO::FETCH_ASSOC)) {
$sql = "SELECT * FROM JassPlayerCards WHERE playerid=? AND position=?";
$playerStmt = $dbconn->prepare($sql);
$data = array($player["playerid"], "hand");
$playerStmt->execute($data);
$handCount = 0;
while ($card = $playerStmt->fetch(PDO::FETCH_ASSOC)) {
$handCount++;
}
if ($players[$currentPlayer] != $handCount) {
$updateHands = true;
}
}
if ($updateHands && $updateBoard) {
echo "3";
} else if ($updateBoard) {
echo "2";
} else if ($updateHands) {
echo "1";
} else {
echo "0";
}
}
} else {
// Skicka tillbaka 5 om spelet inte finns längre
echo "5";
}
} catch (PDOException $e) {
echo $e->getMessage();
}
}
?>