check game ID on AJAX communications

This commit is contained in:
gnieark 2016-06-12 01:04:42 +02:00
parent 4d8ef34c79
commit 8500bc8d81
3 changed files with 24 additions and 11 deletions

View File

@ -2,10 +2,11 @@
require_once(__DIR__."/functions.php");
$bots=get_Bots_Array('connectFou');
$new=false;
switch ($_POST['act']){
case "newFight":
$new=true;
//remove $_SESSION less xd_check
$xd=$_SESSION['xd_check'];
session_unset();
@ -66,11 +67,17 @@ switch ($_POST['act']){
//echo "plop".json_encode($_SESSION['map']);
case "fight":
if($_SESSION['game'] <> "connectFou"){
if(
($_SESSION['game'] <> "connectFou") 
|| ((!$new) && ($_POST['gameId'] <> $_SESSION['matchId'))
){
error(500,"game non found");
}
//What player has to play?
if(!isset($_SESSION['currentPlayer'])){
@ -245,7 +252,8 @@ switch ($_POST['act']){
'strikeY' => $strikeY,
'strikeSymbol'=> $you,
'log' => $you." ".$currentBotName." joue colonne ". $anwserPlayer." et a gagné",
'cellsWin' => json_encode($cellsWin)
'cellsWin' => json_encode($cellsWin),
'gameId' => $_SESSION['matchId']
);
if($_SESSION['currentPlayer']==1){
save_battle('connectFou',$_SESSION['bot1']['name'],$_SESSION['bot2']['name'],1);
@ -273,7 +281,8 @@ switch ($_POST['act']){
'strikeX' => $strikeX,
'strikeY' => $strikeY,
'strikeSymbol'=> $you,
'log' => $you." ".$currentBotName." joue colonne ". $anwserPlayer." match nul"
'log' => $you." ".$currentBotName." joue colonne ". $anwserPlayer." match nul",
'gameId' => $_SESSION['matchId']
);
}else{
@ -283,7 +292,8 @@ switch ($_POST['act']){
'strikeX' => $strikeX,
'strikeY' => $strikeY,
'strikeSymbol'=> $you,
'log' => $you." ".$currentBotName." joue colonne ". $anwserPlayer
'log' => $you." ".$currentBotName." joue colonne ". $anwserPlayer,
'gameId' => $_SESSION['matchId']
);
}
}
@ -294,7 +304,8 @@ switch ($_POST['act']){
'continue' =>0,
'strikeX' => -1,
'strikeY' => -1,
'log' => $you." ".$currentBotName." a fait une réponse non conforme, il perd".json_encode($tempPlayer)."|"
'log' => $you." ".$currentBotName." a fait une réponse non conforme, il perd".json_encode($tempPlayer),
'gameId' => $_SESSION['matchId']
);
if($_SESSION['currentPlayer']==1){
save_battle('connectFou',$_SESSION['bot1']['name'],$_SESSION['bot2']['name'],2);

View File

@ -18,9 +18,10 @@ function createElem(type,attributes){
{elem.setAttribute(i,attributes[i]);}
return elem;
}
function connectFour(bot1,bot2,xd_check, newGame){
function connectFour(bot1,bot2,xd_check, gameId, newGame){
if (newGame === undefined){
newGame = true;
newGame = true;
gameId=0;
}
if (newGame){
@ -58,6 +59,7 @@ function connectFour(bot1,bot2,xd_check, newGame){
}
//log
document.getElementById('logs').innerHTML += reponse['log'] + '<br/>';
//fill the grid
if( reponse['strikeX'] > -1){
document.getElementById('td' + reponse['strikeX'] + '_' + reponse['strikeY']).innerHTML = reponse['strikeSymbol'];
@ -76,7 +78,7 @@ function connectFour(bot1,bot2,xd_check, newGame){
//if game isn't finished, continue
if(reponse['continue'] == 1){
connectFour(bot1,bot2,xd_check, false);
connectFour(bot1,bot2,xd_check,reponse['gameId'], false);
}
}else{
alert ('error ' + xhr.status);
@ -90,5 +92,5 @@ function connectFour(bot1,bot2,xd_check, newGame){
}else{
var act='fight';
}
xhr.send('act=' + act + '&bot1=' + bot1 + '&bot2=' + bot2 + '&xd_check=' + xd_check);
xhr.send('act=' + act + '&bot1=' + bot1 + '&bot2=' + bot2 + '&xd_check=' + xd_check + '&gameId=' + gameId);
}

View File

@ -23,5 +23,5 @@ $bots=get_Bots_Array('connectFou');
?>
</select>
</p>
<p><input type="button" value="<?php echo $lang['FIGHT']; ?>" onclick="connectFour(document.getElementById('bot1').value,document.getElementById('bot2').value,'<?php echo xd_check_input(2); ?>');"></p>
<p><input type="button" value="<?php echo $lang['FIGHT']; ?>" onclick="connectFour(document.getElementById('bot1').value,document.getElementById('bot2').value,'<?php echo xd_check_input(2); ?>',0);"></p>
<div id="fightResult"></div>