save.php 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127
  1. <?php
  2. // ATENCAO ao
  3. // * nome da base de dados: db_ifractions
  4. // * nome da tabela dados : ifractions
  5. // php/save.php on line 23, referer: http://milanesa.ime.usp.br/ifractions1/
  6. /// @see js/circleOne.js
  7. /// @see js/squareOne.js
  8. /// @see js/squareTwo.js
  9. /// @see js/globals.js
  10. function remove_accents ($stripAccents) {
  11. /*
  12. $stripAccents = strtr($stripAccents,
  13. 'àáâãäçèéêëìíîïñòóôõöùúûüýÿÀÁÂÃÄÇÈÉÊËÌÍÎÏÑÒÓÔÕÖÙÚÛÜÝ',
  14. 'aaaaaceeeeiiiinooooouuuuyyAAAAACEEEEIIIINOOOOOUUUUY');
  15. $stripAccents = preg_replace('/[^\x20-\x7E]/','', $stripAccents);
  16. */
  17. return $stripAccents;
  18. }
  19. // Monta vetor [0,1] de dados da m<E1>quina cliente
  20. function ipMaquina0 () {
  21. if (getenv("HTTP_CLIENT_IP"))
  22. $ip = getenv("HTTP_CLIENT_IP");
  23. elseif (getenv("HTTP_X_FORWARDED_FOR"))
  24. $ip = getenv("HTTP_X_FORWARDED_FOR");
  25. elseif (getenv("REMOTE_ADDR"))
  26. $ip = getenv("REMOTE_ADDR");
  27. $resp[0] = $ip;
  28. $resp[1] = gethostbyaddr($ip);
  29. return $resp;
  30. }
  31. // Monta vetor [0,1] de dados da m<E1>quina cliente
  32. function ipMaquina () {
  33. if (getenv("HTTP_CLIENT_IP"))
  34. $ip = getenv("HTTP_CLIENT_IP");
  35. elseif (getenv("HTTP_X_FORWARDED_FOR"))
  36. $ip = getenv("HTTP_X_FORWARDED_FOR");
  37. elseif (getenv("REMOTE_ADDR"))
  38. $ip = getenv("REMOTE_ADDR");
  39. $strIP = $ip;
  40. $resp = gethostbyaddr($ip);
  41. if (isset($resp) && strlen($resp)>0) {
  42. $strIP .= "; " . $resp;
  43. }
  44. return $strIP;
  45. }
  46. $servername = "localhost";
  47. $username = "root"; // put here the name of user root of MySQL
  48. $password = "put_paswd"; // put here the password of user root of MySQL
  49. $dbname = "put_name_of_base"; // put here the name of data base used to register iFraction use
  50. // Create connection
  51. $conn = new mysqli($servername, $username, $password, $dbname);
  52. // Check connection
  53. if ($conn->connect_error) {
  54. die("Connection failed: " . $conn->connect_error);
  55. }
  56. // $ip = $_REQUEST["s_ip"];
  57. $ip = ipMaquina();
  58. /*
  59. $vet_ip = ipMaquina0();
  60. $ip = "";
  61. if (isset($vet_ip[0]) && strlen($vet_ip[0]>0))
  62. $ip = $vet_ip[0];
  63. if (isset($vet_ip[1]) && strlen($vet_ip[1]>0))
  64. if (strlen($ip)>0)
  65. $ip = $ip . " - " . $vet_ip[1];
  66. else
  67. $ip = $vet_ip[1];
  68. */
  69. $play = $_REQUEST["s_name"];
  70. $date = date("Y-m-d H:i:s");
  71. $lang = $_REQUEST["s_lang"];
  72. $game = $_REQUEST["s_game"];
  73. $mode = $_REQUEST["s_mode"];
  74. $oper = $_REQUEST["s_oper"];
  75. $leve = $_REQUEST["s_leve"];
  76. $posi = $_REQUEST["s_posi"];
  77. $resu = $_REQUEST["s_resu"];
  78. $time = $_REQUEST["s_time"];
  79. $deta = $_REQUEST["s_deta"];
  80. $play0 = $play; // /var/www/html/ifractions1/js/preMenu.js: insert_name
  81. $play = remove_accents($play); // /js/squareOne.js:vars=s_ip=143.107.45.11&s_name=&s_lang=pt&s_game=Square&s_mode=A&s_oper=Plus&s_leve=1&s_posi=1&s_resu=true&s_time=3&s_deta=numBlocks:3, valBlocks: 1,1,1, blockIndex: 2, floorIndex: 2; url=php/save.php
  82. if (is_object($lang))
  83. $lang = json_decode($lang);
  84. // Table 'ifractions': id s_hostip s_playername s_datetime s_lang s_game s_mode s_operator s_level s_mappos s_result s_time s_details
  85. $sql = "INSERT INTO ifractions
  86. (s_hostip, s_playername, s_datetime, s_lang, s_game, s_mode, s_operator, s_level, s_mappos, s_result, s_time, s_details)
  87. VALUES
  88. ('$ip', '$play', '$date', '$lang', '$game', '$mode', '$oper', $leve, $posi, '$resu', $time, '$deta')";
  89. // Register in database
  90. if ($conn->query($sql) === TRUE) {
  91. print "Gravado/Grabado";
  92. $result = "OK";
  93. } else {
  94. print "Error: " . $sql . "<br>" . $conn->error;
  95. $result = "Erro: " . $conn->error;
  96. }
  97. //DEBUG
  98. // js/menu.js : var menuState = { player_info = ... username ...}
  99. // welcome
  100. // index.php: game.state.add('name', nameState);
  101. $name = $_REQUEST["name"];
  102. $username = $_REQUEST["username"];
  103. $data = date('Y_m_d_H_i_s');
  104. $fp = fopen('../../temp/file_' . $data . ".txt", 'w');
  105. fwrite($fp, "nome=" . $play0 . ", name=" . $name . ", username=" . $username . "\n" . $sql . "\nResultado: " . $result);
  106. fclose($fp);
  107. $conn->close();
  108. ?>