19.06.2015, 09:17
Witam
Posiadam pewien skrypt, który pobiera dane z serwera gry następnie zapisuje je do bazy mysql i wyświetla na stronie www lecz mam jeden mały problem wszelkie dodane rekordy mają źle pobierane dane dla kolumn Pierwsze Wejście oraz Ostatnio Online mianowicie pobrane rekordy pokazują 2godziny do tyłu, cały skrypt można znaleźć pod linkiem http://www.project-games.eu/logi/time/dd2/?p=1
Teraz moje pytanie czy do owego skryptu można dodać kod php, który będzie regulował czas czyli dodawał te 2godziny
plik konfiguracyjny
index
Posiadam pewien skrypt, który pobiera dane z serwera gry następnie zapisuje je do bazy mysql i wyświetla na stronie www lecz mam jeden mały problem wszelkie dodane rekordy mają źle pobierane dane dla kolumn Pierwsze Wejście oraz Ostatnio Online mianowicie pobrane rekordy pokazują 2godziny do tyłu, cały skrypt można znaleźć pod linkiem http://www.project-games.eu/logi/time/dd2/?p=1
Teraz moje pytanie czy do owego skryptu można dodać kod php, który będzie regulował czas czyli dodawał te 2godziny
plik konfiguracyjny
Kod PHP:
<?php
/**
* Plik konfiguracyjny
*/
// ------------------------
// Host bazy danych
// ------------------------
$CONFIG['db_host'] = '127.0.0.1';
// ------------------------
// Użytkownik bazy danych
// ------------------------
$CONFIG['db_user'] = ';
// ------------------------
// Hasło użytkownika bazy danych
// ------------------------
$CONFIG['db_pass'] = '';
// ------------------------
// Nazwa bazy danych
// ------------------------
$CONFIG['db_name'] = '';
// ------------------------
// Tabela czasu xD
// ------------------------
$CONFIG['db_table'] = 'players_time_dd2';
// ---------------------------------------
// Tego niżej nie ruszać xD
// ---------------------------------------
error_reporting(0);
try {
$pdo = new PDO("mysql:host={$CONFIG['db_host']};dbname={$CONFIG['db_name']}", $CONFIG['db_user'], $CONFIG['db_pass']);
}
catch(PDOException $exception) {
print "<h3>Błąd mysql</h3>";
print $exception->getMessage();
exit;
}
class Czas {
public $db = null;
public $config = array();
public function __construct($pdo_handle, $config) {
$this->db = $pdo_handle;
$this->config = $config;
}
public function getRecord($start = 0, $count = 100, $order = array(), $search) {
$start = intval($start);
$count = intval($count);
$sql = "SELECT * FROM `{$this->config['db_table']}` ";
if(isset($search['nick'])) {
$search['nick'] = addslashes($search['nick']);
$sql .= "where `nick` LIKE '%{$search['nick']}%' ";
}
if(isset($order['type']) && isset($order['by'])) {
$by = addslashes($order['by']);
$type = addslashes($order['type']);
$sql .= "order by `{$by}` {$type} ";
}
$sql .= "LIMIT {$start}, {$count} ";
$res = $this->db->query($sql);
return $res->fetchAll();
}
}
$mq = new Czas($pdo, $CONFIG);
index
Kod PHP:
<?php
require 'config.php';
?>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="target-densitydpi=device-dpi, width=device-width, initial-scale=1.0, maximum-scale=1">
<!-- Metro UI -->
<link href="css/modern.css" rel="stylesheet">
<link href="css/site.css" rel="stylesheet" type="text/css">
<!-- Metro UI -->
<title>Czas Online</title>
</head>
<body class="metrouicss">
<div class="page">
<div class="nav-bar">
<div class="nav-bar-inner padding10">
<span class="pull-menu"></span>
<a href="/">
<span class="element brand">
<img class="place-left" src="images/logo32.png" style="height: 20px"/>
Czas Online
</span>
</a>
<div class="divider"></div>
<ul class="menu">
<li><a href="/">Strona Główna</a></li>
</ul>
</div>
</div>
<div class="page-header">
<div class="page-header-content">
<h1>Czas Online</h1>
</div>
</div>
<div class="page-region">
<div class="page-region-content">
<h2>Szukaj</h2>
<form method="post" action="">
<div class="input-control text span4">
<input type="text" value="<?php echo isset($_POST['nick']) ? $_POST['nick'] : '' ?>" name="nick" autofocus />
<button class="btn-search"/>
</div>
</form>
<table class="bordered" style="text-align: center;">
<thead>
<tr>
<?php $sort = (isset($_GET['sort']) && $_GET['sort'] == 'asc') ? 'desc' : 'asc'; ?>
<th><a href="?sort=<?php echo $sort ?>&by=nick">Nick</a></th>
<th><a href="?sort=<?php echo $sort ?>&by=steamid">SteamID</a></th>
<th><a href="?sort=<?php echo $sort ?>&by=time">Czas Online</a></th>
<th><a href="?sort=<?php echo $sort ?>&by=first">Pierwsze Wejście</a></th>
<th><a href="?sort=<?php echo $sort ?>&by=last">Ostatnio Online</a></th>
</tr>
</thead>
<tbody>
<?php
// -------------------------
// Stronnicowanie
// -------------------------
$curr_page = (isset($_GET['p']) && $_GET['p'] > 1) ? $_GET['p'] : 0;
$start = 0;
if($curr_page > 1) {
$start = $curr_page * 20 - 20;
}
// -------------------
// Sortowanie
// -------------------
$order_by = 'time';
$order_type = 'DESC';
if(isset($_GET['sort'])) {
$order_type = strtoupper($_GET['sort']) == 'ASC' ? 'ASC' : 'DESC';
}
if(isset($_GET['by'])) {
$order_by = $_GET['by'];
}
// -------------------------------
// Pobieranie rekordów dla danego kryterium
// -------------------------------
$record = $mq -> getRecord($start, 20, array(
'by' => $order_by,
'type' => $order_type
), $_POST);
if(count($record)) {
for($i=0, $c=count($record); $i<$c; $i++) {
$data = $record[$i];
echo '<tr' .( $data[ 'type' ] ? ' class="selected-row" ' : ''). '>';
echo '<td>' . htmlspecialchars($data['nick']) . '</td>';
echo '<td>' . $data['steamid'] . '</td>';
echo '<td>' . gmdate("H:i:s", $data['time']) . '</td>';
echo '<td>' . gmdate("d.m.Y (H:i:s)", $data['first']) . '</td>';
echo '<td>' . gmdate("d.m.Y (H:i:s)", $data['last']) . '</td>';
echo '</tr>';
}
}
else {
print "<tr class='error'><td colspan='5'>Brak wyników dla tego zapytania</td></tr>";
}
?>
</tbody>
</table>
<br /><br />
<div class="pagination">
<ul>
<?php
// ---------------------------
// Wyświetlanie stron
// ---------------------------
$q = $pdo -> query("SELECT COUNT(`id`) AS `records` FROM `{$CONFIG['db_table']}`");
$q = $q -> fetch();
$records = $q['records'];
$page = ceil($records/20);
for($i=0; $i<$page; $i++) {
echo '<li class="' . ( ( $curr_page == $i ) ? 'active' : '' ) . '"><a href="?p='.($i+1).'">' . ($i+1) . '</a></li>';
}
?>
</ul>
</div>
<br />
</div>
</div>
</div>
</div>
</body>
</html>