Tworzę grę via www, i napotkałem na taki problem... Pewnie jest to coś prostego, ale ja się z tym już trochę głowię... ;/
Otóż zrobiłem coś takiego, że po wybraniu odpowiedniego "przypała" i kliknięciu przycisku wykonaj przechodzi na stronę, na której są wysyłane dane do bazy- doświadczenie, respekt itd. I z prawej strony jest panel, na którym jest pokazane ile aktualnie mamy respektu, kasy, doświadczenia, itp. Jeśli wykonam przypał, to dodaje mi normalnie dane do bazy, ale nie uaktualnia w tym panelu ile mam tych wszystkich statystyk. Dopiero po odświeżeniu strony wyświetla te nowe statystyki. Jeszcze się nigdy z takim czymś nie spotkałem, więc to jest dla mnie nowością... Oto kod skryptu, który odpowiada za wykonanie przypała:
<?php { ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>Jestem hardkorem!</title> <meta http-equiv="Content-Language" content="Polish" /> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <link rel="stylesheet" type="text/css" href="style.css" media="screen" /> <link rel="shortcut icon" href="/img/favicon.ico" /> </head> <body> <div id="wrap"> <div id="header"> <a href="index.php"><img src="logo.png" border="0"></a> </div> <div id="content"> <div class="menu"> <center> <?php require('prawemenu.php'); ?> </div> <div class="right"> <br> <h1>Przypały</h1><br> <div class="articles"> <?php require('conn.php'); $login=$_SESSION['login']; $id=$r['id']; $nazwa=$r['nazwa']; $opis=$r['opis']; $powodzenie=$r['powodzenie']; $niepowodzenie=$r['niepowodzenie']; $losowanie_od=$r['losowanie_od']; $losowanie_do=$r['losowanie_do']; $szansa=$r['szansa']; $zdobyte_doswiadczenie=$r['zdobyte_doswiadczenie']; $zdobyty_respekt=$r['zdobyty_respekt']; $zdobyta_kasa=$r['zdobyta_kasa']; $stracone_doswiadczenie=$r['stracone_doswiadczenie']; $stracony_respekt=$r['stracony_respekt']; $stracona_kasa=$r['stracona_kasa']; $stracona_energia=$r['stracona_energia']; $wymagania=$r['wymagania']; if ($naprzypale['naprzypale']==1) { if ($row['energia']>=$stracona_energia) { if ($wym['doswiadczenie'] >= $wymagania && $wym['respekt'] >= $wymagania) { if ($przebieg<=$szansa) { mysql_query("UPDATE user SET doswiadczenie=doswiadczenie+'$zdobyte_doswiadczenie', respekt=respekt+'$zdobyty_respekt', kasa=kasa+'$zdobyta_kasa', energia=energia-'$stracona_energia', naprzypale=0 WHERE login='$login'"); } else { mysql_query("UPDATE user SET doswiadczenie=doswiadczenie-'$stracone_doswiadczenie', respekt=respekt-'$stracony_respekt', kasa=kasa-'$stracona_kasa', energia=energia-'$stracona_energia', naprzypale=0 WHERE login='$login'"); } } else { echo '<font color="red">Nie uda?o Ci si? wykona? tego przypa?u, przy pr?bie da?e? cia?a!<br>Lama!</font>'; } } else { } } else { } ?> <br><a href="przypaly.php">Przejd? do menu wyboru przypa??w</a></div> </div> <div class="left"> <?php require('lewemenu.php'); ?> </div> <div style="clear: both;"> </div> </div> <div id="bottom"> </div> <div id="footer"> Stworzone przez Arthesa, wszelkie prawa zastrze?one. </div> </div> </body> </html> <?php } else { } ?>
A oto treść pliku prawemenu.php, który jest tym panelem po prawej stronie:
<center> <h2>Statystyki</h2> <br> <?php require('conn.php'); $login=$_SESSION['login']; ?> </ul> </center>
Nie wiem, jaka tego jest przyczyna... Ale zauważyłem, że przy wchodzeniu na przypał tak jakby nie odświeża się cała strona, tylko ta która odpowiada za informacje...
Mam nadzieję, że ktoś mi pomoże... pozdrawiam
