Autor | Zpráva | ||
---|---|---|---|
THANATOS Profil |
#1 · Zasláno: 27. 7. 2014, 09:43:44 · Upravil/a: Moderátor (editace znemožněna) 27. 7. 2014, 10:46:09
Zdravím, som tu prvý krát tak ak som niečo prehliadol tak sa vopred ospravedlnujem. Mám kód, ktorým vypisujem z hry stav kto má VIP účet v hre a sú tam ešte nejaké štatistiky. Súbor je príklad newbie.php a údaje sa ukladajú do list1.txt ktoré sa potom vypisujú po otvorení newbie.php problém je že vypisuje zoznam len keď je daný hráč online tak sa to aktualizuje. Ja by som potreboval vypísať a uložiť hráča keď sa pripojí na server a keď sa odpojí aby to zostalo uložené v tom súbore a vždy ked sa pripojí tak sa to len aktualizovalo.
súbor (newbie.php) vyzerá takto vypisuje len hráčov online a ja to potrebujem uložiť do list.$i.txt to spravené mám len potrebujem aby to neprepisovalo aj keď sa hráč odpojí aby to ukazovalo aj offline a neviem si s tým rady <ul> <li> <?php echo "<span style=current><a href='/staty/newbie.php'>Newbie</a></span>"; echo " <a href='/staty/fun.php'><span style='current'>Fun</span></a>"; echo " <a href='/staty/normal.php'><span style=current>Normal</span></a>"; echo " <a href='/staty/normal2.php'><span style='current'>Normal 2</span></a>"; echo " <a href='/staty/hardcore.php'><span style='current'>Hardcore</span></a>"; echo " <a href='/staty/pvp.php'><span style='current'>PvP</span></a>"; ?> </li></ul> <?php /* Settings start */ $bans_per_page = 15; $number_of_files = 1; /* Settings end */ if (isset($_GET['page']) && $_GET['page'] == 1) { header('Location: ' . basename($_SERVER['PHP_SELF'])); } $rows = []; for ($i = 1; $i <= $number_of_files; $i++) { $path =__DIR__.'/list'. $i .'.txt'; if (file_exists($path)) { $contents = file_get_contents($path); $_rows = explode('<br>', nl2br($contents, FALSE)); foreach ($_rows as $item) { $ex = explode('::', $item); if (count($ex) > 1) { $ex2 = explode(' ', $ex[0]); $rows[] = [ 'zalozen' => $ex[0], 'nick' => $ex[1], 'vip' => $ex[2], 'clan' => $ex[3], 'cash' => $ex[4], 'hracikill' => $ex[5], 'smrti' => $ex[6], 'mutanti' => $ex[7], 'zvirata' => $ex[8], ]; } } } } usort($rows, function($a, $b) { return strcmp($a['zalozen'], $b['zalozen']); }); $items_count = count($rows); $page = !empty($_GET['page']) ? (int) $_GET['page'] : 1; $array_offset = ($page - 1) * $bans_per_page; $array_offset_last = $array_offset + 0; if ($array_offset + $bans_per_page <= $items_count - 1) { $array_offset_last = $array_offset + $bans_per_page; } else { $array_offset_last = $items_count - 1; } $rows = array_reverse($rows); ?> <table> <tr> <td>Datum Založení</td> <td>Hráč</td> <td>VIP skončí</td> <td>Klan</td> <td>Peníze</td> <td>Zabití hráčů</td> <td>Počet smrtí</td> <td>K/D ratio</td> <td>Zabití mutantů</td> <td>Zabití zvířat</td> </tr> <?php for ($i = $array_offset; $i <= $array_offset_last; $i++) { ?> <tr> <td><?php echo $rows[$i]['zalozen'] ?></td> <td><?php echo $rows[$i]['nick'] ?></td> <td><?php if (($rows[$i]['vip']) == "01/01/0001 00:00:00") { echo "Tento hráč nemá VIP."; } else { echo "<span style='color:#00FF00; font-weight:bold;'>".($rows[$i]['vip'])."</span>"; } ?></td> <td><?php echo $rows[$i]['clan'] ?></td> <td><?php echo $rows[$i]['cash'] ?></td> <td><?php echo $rows[$i]['hracikill'] ?></td> <td><?php echo $rows[$i]['smrti'] ?></td> <td><?php echo $hodnota = $rows[$i]['hracikill'] / $rows[$i]['smrti'],1; echo $hodnota?></td> <td><?php echo $rows[$i]['mutanti'] ?></td> <td><?php echo $rows[$i]['zvirata'] ?></td> </tr> <?php } ?> </table> <ul> <?php for ($j = 1; $j <= ceil($items_count / $bans_per_page); $j++) { $class = $page == $j ? ' class="current"' : ''; $url = basename($_SERVER['PHP_SELF']) . ($j > 1 ? '?page=' . $j : ''); ?> <li<?php echo $class ?>> <a href="<?php echo $url ?>"><?php echo $j ?></a> </li> <?php } ?> </ul> Moderátor Alphard: Z kódu odmazáno nyní zbytečné CSS.
|
||
Micruss Profil |
Na tydle věci jsou dělaný databáze, ne soubory. Takže bych ti poradil, přehoď to na databázi
|
||
Časová prodleva: 10 let
|
0