Advertisement
Guest User

Untitled

a guest
Oct 15th, 2018
72
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 14.92 KB | None | 0 0
  1. <?php
  2. session_start();
  3. require_once('db_connect.php');
  4.  
  5. class gracz{
  6.  
  7. public $karty_gracza=[];
  8. public $ukryte=[];
  9. public $karty=['2','3','4','5','6','7','8','9','10','Jopek','Dama','Krol','as'];
  10.  
  11.  
  12. public function losuj($numer){
  13.  
  14. global $pdo_website;
  15.  
  16. for($i=0;$i<10;$i++){
  17.  
  18. $id_karty=array_rand ($this->karty, 1);
  19. array_push($this->karty_gracza,$this->karty[$id_karty]);
  20.  
  21. }
  22.  
  23. for($i=0;$i<4;$i++){
  24.  
  25. $id_karty=array_rand ($this->karty, 1);
  26. array_push($this->ukryte,$this->karty[$id_karty]);
  27.  
  28. }
  29.  
  30. $sql= $pdo_website->query("UPDATE popie SET gracz".$numer." = '".serialize($this->karty_gracza)."' , ukryte_karty".$numer." = '".serialize($this->ukryte)."' WHERE id=1");
  31.  
  32. }
  33.  
  34. public function karty_gracza($numer){
  35.  
  36. global $pdo_website;
  37.  
  38. $sql= $pdo_website->query("SELECT * FROM popie LIMIT 1 ");
  39. $row = $sql->fetchAll();
  40.  
  41. $this->karty_gracza = unserialize($row[0]['gracz'.$numer.'']);
  42. $this->ukryte = unserialize($row[0]['ukryte_karty'.$numer.'']);
  43.  
  44. }
  45.  
  46. public function pokaz_karty(){
  47.  
  48. if($this->karty_gracza==null&&$this->ukryte!=null)
  49. echo '<input type="checkbox" name="ukryte" value="'.end($this->ukryte).'" />'.end($this->ukryte).'<br /> ';
  50.  
  51. sort($this->karty_gracza);
  52.  
  53. foreach ($this->karty_gracza as $key1 => $value1) {
  54.  
  55. echo '<input type="checkbox" name="'.$key1.'" value="'.$value1.'" />'.$value1.'<br /> ';
  56.  
  57. }
  58. }
  59.  
  60. public function wyloz_karte($POST,$numer){
  61.  
  62. global $pdo_website;
  63.  
  64. $sql= $pdo_website->query("SELECT * FROM popie LIMIT 1 ");
  65. $stol = $sql->fetchAll();
  66.  
  67. if($karty_stol=unserialize($stol[0]['stol'])!='')
  68. $karty_stol=unserialize($stol[0]['stol']);
  69. else
  70. $karty_stol=[];
  71.  
  72. unset($POST['submit']);
  73.  
  74. foreach ($POST as $key => $value) {
  75.  
  76. if(!isset($POST['ukryte'])){
  77.  
  78. $waga_stara=array_search(end($karty_stol),$this->karty);
  79. $waga_nowa=array_search($value,$this->karty);
  80.  
  81. if($value=='10'){
  82.  
  83. unset($karty_stol);
  84. unset($this->karty_gracza[$key]);
  85.  
  86. }
  87. elseif($value=='2'){
  88.  
  89. array_push($karty_stol,$value);
  90. unset($this->karty_gracza[$key]);
  91.  
  92. }
  93. elseif($waga_nowa>=$waga_stara&&end($karty_stol)!='6'){
  94.  
  95. array_push($karty_stol,$value);
  96. unset($this->karty_gracza[$key]);
  97.  
  98.  
  99. }elseif($waga_nowa<=$waga_stara&&end($karty_stol)=='6'&&$waga_nowa!=$waga_stara){
  100.  
  101. array_push($karty_stol,$value);
  102. unset($this->karty_gracza[$key]);
  103.  
  104. }else{
  105.  
  106. $this->karty_gracza=array_merge($this->karty_gracza,$karty_stol);
  107. unset($karty_stol);
  108.  
  109. }
  110.  
  111. }elseif(isset($POST['ukryte'])){
  112.  
  113. $waga_stara=array_search(end($karty_stol),$this->karty);
  114. $waga_nowa=array_search($value,$this->karty);
  115.  
  116. end($this->ukryte);
  117. $key1 = key($this->ukryte);
  118.  
  119.  
  120. if($value=='10'){
  121.  
  122. unset($karty_stol);
  123. unset($this->ukryte[$key1]);
  124.  
  125. }
  126. elseif($value=='2'){
  127.  
  128. array_push($karty_stol,$value);
  129. unset($this->ukryte[$key1]);
  130.  
  131. }
  132. elseif($waga_nowa>=$waga_stara&&end($karty_stol)!='6'){
  133.  
  134. array_push($karty_stol,$value);
  135. unset($this->ukryte[$key1]);
  136.  
  137. }elseif($waga_nowa<=$waga_stara&&end($karty_stol)=='6'&&$waga_nowa!=$waga_stara){
  138.  
  139. array_push($karty_stol,$value);
  140. unset($this->ukryte[$key1]);
  141.  
  142. }else{
  143.  
  144. array_push($karty_stol,$value);
  145. $this->karty_gracza=array_merge($this->karty_gracza,$karty_stol);
  146. unset($this->ukryte[$key1]);
  147. unset($karty_stol);
  148.  
  149. }
  150. }
  151. }
  152.  
  153. $sql= $pdo_website->query("SELECT pozostalo_kart FROM popie LIMIT 1 ");
  154. $pozostalo_kart = $sql->fetchAll();
  155. $ile=0;
  156. if(count($this->karty_gracza)<=9&&$pozostalo_kart[0]['pozostalo_kart']>0){
  157.  
  158. while(count($this->karty_gracza)<=9){
  159. $ile++;
  160. $id_karty=array_rand ($this->karty, 1);
  161. array_push($this->karty_gracza,$this->karty[$id_karty]);
  162.  
  163. }
  164. }
  165.  
  166. $sql= $pdo_website->query("UPDATE popie SET gracz".$numer." = '".serialize($this->karty_gracza)."' , stol = '".serialize($karty_stol)."' , ukryte_karty".$numer." = '".serialize($this->ukryte)."' , pozostalo_kart=pozostalo_kart-".$ile." WHERE id=1");
  167.  
  168. unset($_POST);
  169. header('Refresh:0');
  170.  
  171.  
  172. }
  173.  
  174. }
  175.  
  176. if(isset($_POST['nowa'])){
  177.  
  178. $pdo_website->query("TRUNCATE popie; ");
  179. $pdo_website->query("INSERT INTO `popie` (`id`, `uid_gracz1`, `gracz1`, `ukryte_karty1`, `uid_gracz2`, `gracz2`, `ukryte_karty2`, `uid_gracz3`, `gracz3`, `ukryte_karty3`, `uid_gracz4`, `gracz4`, `ukryte_karty4`, `stol`, `pozostalo_kart`) VALUES (NULL, '', '', '', '', '', '', '', '', '', '', '', '', '', '".$_POST['ilosc']."');");
  180. session_destroy();
  181. header('Refresh:0');
  182.  
  183. }
  184.  
  185.  
  186. if(!$_SESSION['logged']){
  187.  
  188. $sql= $pdo_website->query("SELECT * FROM popie LIMIT 1 ");
  189. $wolne_miejsce = $sql->fetchAll();
  190. if($wolne_miejsce[0]['uid_gracz1']=='')
  191. $wolny_gracz=1;
  192. elseif($wolne_miejsce[0]['uid_gracz2']=='')
  193. $wolny_gracz=2;
  194. elseif($wolne_miejsce[0]['uid_gracz3']=='')
  195. $wolny_gracz=3;
  196. elseif($wolne_miejsce[0]['uid_gracz4']=='')
  197. $wolny_gracz=4;
  198. else{
  199.  
  200. echo 'Aktualnie trwa gra. <form action="" method="POST" >
  201. <input type="number" name="ilosc" placeholder="ilosc kart do dobierania" required />
  202. <input type="submit" name="nowa" value="Zacznij nowa gre" />
  203. </form>
  204. ';
  205. exit;
  206.  
  207. }
  208.  
  209. if(isset($_POST['dolacz'])){
  210.  
  211. $sql= $pdo_website->query("UPDATE popie SET uid_gracz".$wolny_gracz." = '".session_id().",".htmlspecialchars($_POST['nick'])."' WHERE id=1");
  212. $_SESSION['logged']=true;
  213. $_SESSION['gracz']=$wolny_gracz;
  214. $_SESSION['nick']=htmlspecialchars($_POST['nick']);
  215.  
  216. $mojgracz= new gracz();
  217. $mojgracz->losuj($wolny_gracz);
  218. header('Refresh:0');
  219. }
  220.  
  221. echo '
  222.  
  223. <form method="POST" action="">
  224. <input type="hidden" name="free" value="'.$wolny_gracz.'" />
  225. <input type="text" name="nick" placeholder="Podaj nick" required />
  226. <input type="submit" name="dolacz" value="Dołącz" />
  227. </form>
  228.  
  229. <form action="" method="POST" >
  230. <input type="number" name="ilosc" placeholder="ilosc kart do dobierania" required />
  231. <input type="submit" name="nowa" value="Zacznij nowa gre" />
  232. </form>
  233. ';
  234. exit;
  235. }
  236. ?>
  237.  
  238. <head>
  239.  
  240. <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
  241.  
  242. <script>
  243. window.dataLayer = window.dataLayer || [];
  244. function gtag(){dataLayer.push(arguments);}
  245. gtag('js', new Date());
  246.  
  247. gtag('config', 'UA-120287162-1');
  248.  
  249. function mysql_query(query) {
  250.  
  251. var json = null;
  252.  
  253. $.ajax({
  254.  
  255. type: "POST",
  256. async: false,
  257. url: "ajax.php",
  258. data: { query : query },
  259. success: function(response) {
  260. json = response;
  261.  
  262. }
  263.  
  264. });
  265.  
  266. return json;
  267.  
  268. }
  269. </script>
  270.  
  271. <style>
  272.  
  273. #self{
  274.  
  275. float:left;
  276. background-color:yellow;
  277. float:left;
  278.  
  279. }
  280.  
  281. .gracz_kolejny{
  282.  
  283. float:left;
  284. background-color:red;
  285. border: 2px solid black;
  286. margin-left: 1%;
  287. padding:3px;
  288.  
  289. float:left;
  290. }
  291.  
  292.  
  293.  
  294. </style>
  295.  
  296.  
  297.  
  298. </head>
  299.  
  300.  
  301. <?php
  302. if(isset($_POST['nowa'])){
  303.  
  304. $pdo_website->query("TRUNCATE popie; ");
  305. $pdo_website->query("INSERT INTO `popie` (`id`, `uid_gracz1`, `gracz1`, `ukryte_karty1`, `uid_gracz2`, `gracz2`, `ukryte_karty2`, `uid_gracz3`, `gracz3`, `ukryte_karty3`, `uid_gracz4`, `gracz4`, `ukryte_karty4`, `stol`, `pozostalo_kart`) VALUES (NULL, '', '', '', '', '', '', '', '', '', '', '', '', '', '".$_POST['ilosc']."');");
  306. session_destroy();
  307. header('Refresh:0');
  308.  
  309. }
  310.  
  311. if(isset($_POST['logout'])){
  312. $pdo_website->query("UPDATE popie SET uid_gracz".$_SESSION['gracz']." = '' WHERE id=1");
  313. session_destroy();
  314. header('Refresh:0');
  315.  
  316. }
  317.  
  318.  
  319. echo'
  320. <form action="" method="POST" >
  321. <input type="number" name="ilosc" placeholder="ilosc kart do dobierania" required />
  322. <input type="submit" name="nowa" value="Zacznij nowa gre" />
  323. </form>
  324. <form action="" method="POST" >
  325. <input type="submit" name="logout" value="Wyloguj się" />
  326. </form>
  327.  
  328. ';
  329.  
  330.  
  331. echo '<div id="stol"></div><br />';
  332.  
  333.  
  334. $mojgracz= new gracz();
  335.  
  336. $mojgracz->karty_gracza($_SESSION['gracz']);
  337. if(isset($_POST['submit']))
  338. $mojgracz->wyloz_karte($_POST,$_SESSION['gracz']);
  339.  
  340. echo '<div id="self"> <br />'.$_SESSION['nick'].'<br /> Twoje karty:';
  341. echo '<form action="" method="POST" >';
  342. $mojgracz->pokaz_karty();
  343. echo '
  344.  
  345. <input type="submit" name="submit" value="wyloz" />
  346. </form> </div>';
  347.  
  348. $sql= $pdo_website->query("SELECT * FROM popie ");
  349. $gracz = $sql->fetchAll();
  350. $numer_gracza=0;
  351.  
  352. echo '<div id="gracze"></div><span style="margin-left:50px;float:left;"> &nbsp</span>';
  353. echo '<form id="add_text" >
  354. <input type="text" maxlength="100" autocomplete="off" name="comment" id="tresc" style="width:12%;" required />
  355. <button type="submit" name="submit_coment" style="margin-top: 15px;" class="btn btn-info btn-sm btn-block">Wyslij</button>
  356. </form><span style="margin-left:50px;float:left;"> &nbsp</span>
  357. <div id="comments" style="width:15%;height:450px;overflow:scroll" ></div>';
  358. /*
  359. for($i=0;$i<4;$i++){
  360.  
  361. $numer_gracza++;
  362.  
  363. if($gracz[0]['uid_gracz'.$numer_gracza.'']!=session_id()&&$gracz[0]['uid_gracz'.$numer_gracza.'']!=''){
  364.  
  365. echo '<div class="gracz_kolejny">
  366. Gracz nr '.$numer_gracza.'<br />
  367. Ilosc kart w reku '.count(unserialize($gracz[0]['gracz'.$numer_gracza.''])).'<br />
  368. Ilosc kart w zakrytych '.count(unserialize($gracz[0]['ukryte_karty'.$numer_gracza.''])).'<br />
  369. </div> ';
  370. }
  371. }
  372. */
  373. ?>
  374. </body>
  375. <script type="text/javascript">
  376.  
  377. function dodawanie() {
  378.  
  379. var data= mysql_query("stol");
  380.  
  381. var comments = $("#stol");
  382.  
  383. document.getElementById('stol').innerHTML='';
  384.  
  385. for(var i=0 ; i < data.length; i++){
  386.  
  387. comments.append(" <br /> W talii pozostalo "+data[i]['pozostalo_kart']+" kart <br /> Karty na stole "+data[i]['karty']);
  388. }
  389. };
  390. dodawanie();
  391. setInterval('dodawanie()',1e3)
  392. </script>
  393. <script>
  394. function gamers(){
  395.  
  396. var data= mysql_query("gracze");
  397.  
  398. var comments = $("#gracze");
  399.  
  400. document.getElementById('gracze').innerHTML='';
  401.  
  402. for(var i=0 ; i < data.length; i++){
  403.  
  404. comments.append(data[i]['gracze']);
  405. }
  406.  
  407. }
  408. gamers();
  409. setInterval('gamers()',1e3)
  410. </script>
  411.  
  412. <script>
  413. function dodawanie_coment() {
  414.  
  415.  
  416.  
  417. var comments = $("#comments");
  418.  
  419. var liczenie = document.getElementById('comments');
  420. var finish = liczenie.getElementsByTagName('div');
  421.  
  422.  
  423. if(mysql_query("helper_chat")>finish.length||document.getElementById('comments').innerHTML==''){
  424. var data= mysql_query("czat");
  425. document.getElementById('comments').innerHTML='';
  426.  
  427. for(var i=0 ; i < data.length; i++){
  428.  
  429. comments.append("<b>"+data[i]['nick_autor']+"</b></a> "+data[i]['time']+"<br /><div>"+data[i]['message']+"<br /></div><hr />");
  430.  
  431. }
  432.  
  433.  
  434. }
  435.  
  436. mysql_query("_helper_chat");
  437.  
  438.  
  439. };
  440.  
  441.  
  442. dodawanie_coment();
  443. setInterval('dodawanie_coment()',1e3)
  444.  
  445. $( "#add_text" ).on('submit', function(e) {
  446.  
  447. var selector = (typeof($(this).attr('id')) !== 'undefined' || $(this).attr('id') !== null) ? '#' + $(this).attr('id') : '.' + $(this).attr('class');
  448. $(selector +" button").prop('disabled', true);
  449. $(selector +" .loading_dot" ).show(500);
  450. e.preventDefault();
  451. var form = $(this).serialize();
  452.  
  453. $.ajax({
  454. dataType: 'json',
  455. type: 'post',
  456. url: 'ajax.php',
  457. data: form,
  458. success: function (received) {
  459. if(received.type=='success'){
  460. $(':input[id=tresc]').val('');
  461.  
  462. }
  463. else{
  464.  
  465. }
  466. $(selector +" button").prop('disabled', false);
  467.  
  468.  
  469.  
  470. },
  471. error: function (request, status, error) {
  472. alert(error);
  473. $(selector +" .loading_dot" ).hide(500);
  474. $(selector +"button").prop('disabled', false);
  475. }
  476.  
  477.  
  478. });
  479. });
  480.  
  481.  
  482.  
  483. </script>
  484.  
  485. <?php
  486. session_start();
  487. require_once('db_connect.php');
  488. header('Content-type: application/json');
  489. $query = $_POST['query'];
  490.  
  491. if(isset($_POST['comment'])&&strlen($_POST['comment'])<=100&&ltrim($_POST['comment'])!=''){
  492. $sql= $pdo_website->query
  493. ("INSERT INTO czat_pop (`nick`,`tresc`,`data`) VALUES ('".$_SESSION['nick']."','".htmlspecialchars(addslashes($_POST['comment']))."','".date("H:i")."') ");
  494. $resluts['type'] = 'success';
  495. echo json_encode($resluts);
  496. }
  497.  
  498.  
  499. if($query == "czat"){
  500.  
  501. $sql= $pdo_website->query("SELECT * FROM czat_pop ORDER BY id DESC");
  502. $count=$sql->rowCount();
  503.  
  504. $komentarze = $sql->fetchAll();
  505.  
  506. $resluts = [];
  507.  
  508. foreach($komentarze as $list){
  509.  
  510. $data['nick_autor']=$list['nick'];
  511. $data['message']=$list['tresc'];
  512. $data['time']=$list['data'];
  513.  
  514. array_push($resluts,$data);
  515.  
  516. }
  517. echo json_encode($resluts);
  518. }
  519.  
  520. if($query == "helper_chat"){
  521.  
  522. $resluts=file_get_contents('last_id_chat');
  523. echo json_encode($resluts);
  524. }
  525.  
  526. if($query == "_helper_chat"){
  527.  
  528. $sql= $pdo_website->query("SELECT id FROM czat_pop ORDER BY id DESC");
  529. $count=$sql->rowCount();
  530. file_put_contents('last_id_chat',$count);
  531. $resluts='Zaktulizwano czat';
  532. echo json_encode($resluts);
  533. }
  534.  
  535. if($query=="stol"){
  536.  
  537. $sql= $pdo_website->query("SELECT * FROM popie LIMIT 1 ");
  538. $stol = $sql->fetchAll();
  539.  
  540. $resluts = [];
  541.  
  542. if($karty_stol=unserialize($stol[0]['stol'])!='')
  543. $karty_stol=unserialize($stol[0]['stol']);
  544. else
  545. $karty_stol=[];
  546.  
  547. $karty='';
  548.  
  549. foreach ($karty_stol as $value) {
  550.  
  551. $karty.=$value.',';
  552.  
  553. }
  554.  
  555.  
  556. $karty_do_sprawdzenia=explode(',',$karty);
  557. $karty_do_sprawdzenia=array_reverse($karty_do_sprawdzenia);
  558. $ile_par=0;
  559.  
  560.  
  561. //print_r($karty_do_sprawdzenia);
  562.  
  563.  
  564. if($karty_do_sprawdzenia[1]==$karty_do_sprawdzenia[2]&&$karty_do_sprawdzenia[1]==$karty_do_sprawdzenia[3]&&$karty_do_sprawdzenia[1]==$karty_do_sprawdzenia[4])
  565. $sql= $pdo_website->query("UPDATE popie SET stol = '' WHERE id=1");
  566.  
  567. //if($ile_par>=2)
  568. //$sql= $pdo_website->query("UPDATE popie SET stol = '' WHERE id=1");
  569.  
  570.  
  571.  
  572. $data['pozostalo_kart']=$stol[0]['pozostalo_kart'];
  573. $data['karty']=$karty;
  574.  
  575. array_push($resluts,$data);
  576.  
  577. echo json_encode($resluts);
  578.  
  579. }
  580.  
  581. if($query=="gracze"){
  582.  
  583.  
  584. $sql= $pdo_website->query("SELECT * FROM popie ");
  585. $gracz = $sql->fetchAll();
  586. $numer_gracza=0;
  587. $resluts = [];
  588. for($i=0;$i<4;$i++){
  589.  
  590. $numer_gracza++;
  591.  
  592. $info_gracz=explode(",",$gracz[0]['uid_gracz'.$numer_gracza.'']);
  593.  
  594.  
  595. if($info_gracz[0]!=session_id()&&$gracz[0]['uid_gracz'.$numer_gracza.'']!=''){
  596.  
  597. $data['gracze'].='<div class="gracz_kolejny">
  598. '.$info_gracz[1].'<br />
  599. Ilosc kart w reku '.count(unserialize($gracz[0]['gracz'.$numer_gracza.''])).'<br />
  600. Ilosc kart w zakrytych '.count(unserialize($gracz[0]['ukryte_karty'.$numer_gracza.''])).'<br />
  601. </div> ';
  602. }
  603. }
  604.  
  605.  
  606. array_push($resluts,$data);
  607.  
  608. echo json_encode($resluts);
  609.  
  610. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement