NewOnlineGame.php 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889
  1. <?php
  2. error_reporting( E_ALL );
  3. $hostname = 'localhost';
  4. $username = 'narKampen';
  5. $pass = 'IfRLzj2HJBXA9eei';
  6. $database = 'narKampen';
  7. $conn = new mysqli($hostname, $username, $pass, $database);
  8. if (!$conn) {
  9. die("Connection Failed. ". mysqli_connect_error());
  10. }
  11. mysqli_set_charset($conn,'utf8');
  12. $winNumber = $_POST['winNumber'];
  13. $limitPerQuestion = $_POST['limitPerQuestion'];
  14. $limitPerPlayer = $_POST['limitPerPlayer'];
  15. $playerIds = $_POST['playerIds'];
  16. $currentUser = $_POST['currentUser'];
  17. $categoryIds = $_POST['categoryIds'];
  18. $playerIdsArray = explode(",",$playerIds);
  19. $playerCount = count($playerIdsArray);
  20. if ($playerCount == 1) {
  21. $status = "STARTED";
  22. } else {
  23. $status = "PENDING";
  24. }
  25. $sql = "INSERT INTO game(" .
  26. "gameMode, " .
  27. "status, " .
  28. "winNumber, " .
  29. "answerTimer, " .
  30. "roundTimeLimit, " .
  31. "numberOfPlayers, " .
  32. "currentPlayer, " .
  33. "round, " .
  34. "startedDate) " .
  35. "VALUES (" .
  36. "'Online', " .
  37. "'$status', " .
  38. "$winNumber, " .
  39. "$limitPerQuestion, " .
  40. "$limitPerPlayer, " .
  41. "$playerCount, " .
  42. "(SELECT id FROM users WHERE id IN ($playerIds) ORDER BY RAND() LIMIT 1), " .
  43. "1, " .
  44. "NOW())";
  45. $result = mysqli_query($conn, $sql);
  46. $error = mysqli_error($conn);
  47. if ($error !== "") {
  48. echo $error;
  49. }
  50. $gameId = mysqli_insert_id($conn);
  51. $playerPartInsertSql = "";
  52. foreach ($playerIdsArray AS $playerId) {
  53. if ($currentUser == $playerId) {
  54. $playerPartInsertSql .= "($gameId, $playerId, 1, 1, 'ACCEPTED'),";
  55. } else {
  56. $playerPartInsertSql .= "($gameId, $playerId, 1, 1, 'WAITING'),";
  57. }
  58. }
  59. $playerPartInsertSql = rtrim($playerPartInsertSql,",");
  60. $playerSql = "INSERT INTO gamePlayers (gameId, playerId, userLockedQuestions, questionsLost, status) VALUES $playerPartInsertSql";
  61. $result = mysqli_query($conn,$playerSql);
  62. $error = mysqli_error($conn);
  63. if ($error !== "") {
  64. echo $error . " from sql " . $playerSql;
  65. }
  66. $categoryValues = "";
  67. foreach ($categoryIds AS $catId) {
  68. $categoryValues .= "($gameId, $catId),";
  69. }
  70. $categoryValues = rtrim($categoryValues, ",");
  71. $categorySql = "INSERT INTO gameCategory(gameId, categoryId) VALUES $categoryValues";
  72. $result = mysqli_query($conn, $categorySql);
  73. $error = mysqli_error($conn);
  74. if ($error !== "") {
  75. echo $error . " from sql " . $categorySql;
  76. }
  77. echo $gameId;
  78. ?>