Postado Julho 17, 2014 10 anos Bom, a pouco, fiz um tópico citando um problema, mas já foi resolvido, agora estou com outro problema, que é no login. O Site está funcionando normalmente, porém quando crio a conta e vou fazer o login para criação do Personagem, aparece o seguinte erro: Mostrar conteúdo oculto Strict Standards: date() [function.date]: It is not safe to rely on the system's timezone settings. Please use the date.timezone setting, the TZ environment variable or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'America/Sao_Paulo' for '-3.0/no DST' instead in C:\xampp\htdocs\classes\account.php on line 189 Outro erro ocorre quando clico em Highscores, Kill Statistics e Guilds: Mostrar conteúdo oculto Parse error: syntax error, unexpected T_PAAMAYIM_NEKUDOTAYIM in C:\xampp\htdocs\classes\databaselist.php on line 105 É o mesmo erro para os 3... Seria algum erro na database? Alguém sabe a solução? Obrigado desde já! Segue abaixo o arquivo (htdocs\classes\account.php) Mostrar conteúdo oculto <?php if(!defined('INITIALIZED')) exit; class Account extends ObjectData { const LOADTYPE_ID = 'id'; const LOADTYPE_NAME = 'name'; const LOADTYPE_MAIL = 'email'; public static $table = 'accounts'; public $data = array('name' => null, 'password' => null, 'premdays' => null, 'lastday' => null, 'email' => null, 'key' => null, 'create_ip' => null, 'creation' => null, 'premium_points' => null, 'page_access' => null, 'location' => null, 'rlname' => null, 'email_new' => null, 'email_new_time' => null, 'email_code' => null, 'next_email' => null, 'last_post' => null, 'flag' => null); public static $fields = array('id', 'name', 'password', 'premdays', 'lastday', 'email', 'key', 'create_ip', 'creation', 'premium_points', 'page_access', 'location', 'rlname', 'email_new', 'email_new_time', 'email_code', 'next_email', 'last_post', 'flag'); public $players; public $playerRanks; public $guildAccess; public $bans; public function __construct($search_text = null, $search_by = self::LOADTYPE_ID) { if($search_text != null) $this->load($search_text, $search_by); } public function load($search_text, $search_by = self::LOADTYPE_ID) { if(in_array($search_by, self::$fields)) $search_string = $this->getDatabaseHandler()->fieldName($search_by) . ' = ' . $this->getDatabaseHandler()->quote($search_text); else new Error_Critic('', 'Wrong Account search_by type.'); $fieldsArray = array(); foreach(self::$fields as $fieldName) $fieldsArray[$fieldName] = $this->getDatabaseHandler()->fieldName($fieldName); $this->data = $this->getDatabaseHandler()->query('SELECT ' . implode(', ', $fieldsArray) . ' FROM ' . $this->getDatabaseHandler()->tableName(self::$table) . ' WHERE ' . $search_string)->fetch(); } public function loadById($id) { $this->load($id, 'id'); } public function loadByName($name) { $this->load($name, 'name'); } public function loadByEmail($mail) { $this->load($mail, 'email'); } public function save($forceInsert = false) { if(!isset($this->data['id']) || $forceInsert) { $keys = array(); $values = array(); foreach(self::$fields as $key) if($key != 'id') { $keys[] = $this->getDatabaseHandler()->fieldName($key); $values[] = $this->getDatabaseHandler()->quote($this->data[$key]); } $this->getDatabaseHandler()->query('INSERT INTO ' . $this->getDatabaseHandler()->tableName(self::$table) . ' (' . implode(', ', $keys) . ') VALUES (' . implode(', ', $values) . ')'); $this->setID($this->getDatabaseHandler()->lastInsertId()); } else { $updates = array(); foreach(self::$fields as $key) if($key != 'id') $updates[] = $this->getDatabaseHandler()->fieldName($key) . ' = ' . $this->getDatabaseHandler()->quote($this->data[$key]); $this->getDatabaseHandler()->query('UPDATE ' . $this->getDatabaseHandler()->tableName(self::$table) . ' SET ' . implode(', ', $updates) . ' WHERE ' . $this->getDatabaseHandler()->fieldName('id') . ' = ' . $this->getDatabaseHandler()->quote($this->data['id'])); } } public function getPlayers($forceReload = false) { if(!isset($this->players) || $forceReload) { $this->players = new DatabaseList('Player'); $this->players->setFilter(new SQL_Filter(new SQL_Field('account_id'), SQL_Filter::EQUAL, $this->getID())); $this->players->addOrder(new SQL_Order(new SQL_Field('name'))); } return $this->players; } /* public function getGuildRanks($forceReload = false) { if(!isset($this->playerRanks) || $forceReload) { $this->playerRanks = new DatabaseList('AccountGuildRank'); $filterAccount = new SQL_Filter(new SQL_Field('account_id', 'players'), SQL_Filter::EQUAL, $this->getID()); $filterPlayer1 = new SQL_Filter(new SQL_Field('id', 'players'), SQL_Filter::EQUAL, new SQL_Field('player_id', 'guild_membership')); $filterPlayer2 = new SQL_Filter(new SQL_Field('rank_id', 'guild_membership'), SQL_Filter::EQUAL, new SQL_Field('id', 'guild_ranks')); $filterGuild = new SQL_Filter(new SQL_Field('guild_id', 'guild_ranks'), SQL_Filter::EQUAL, new SQL_Field('id', 'guilds')); $filter = new SQL_Filter($filterAccount, SQL_Filter::CRITERIUM_AND, $filterPlayer1); $filter = new SQL_Filter($filter, SQL_Filter::CRITERIUM_AND, $filterPlayer2); $filter = new SQL_Filter($filter, SQL_Filter::CRITERIUM_AND, $filterGuild); $this->playerRanks->setFilter($filter); } return $this->playerRanks; } public function loadGuildAccess($forceReload = false) { if(!isset($this->guildAccess) || $forceReload) { $this->guildAccess = array(); foreach($this->getGuildRanks($forceReload) as $rank) if($rank->getOwnerID() == $rank->getPlayerID()) $this->guildAccess[$rank->getGuildID()] = Guild::LEVEL_OWNER; elseif(!isset($this->guildAccess[$rank->getGuildID()]) || $rank->getLevel() > $this->guildAccess[$rank->getGuildID()]) $this->guildAccess[$rank->getGuildID()] = $rank->getLevel(); } } public function isInGuild($guildId, $forceReload = false) { $this->loadGuildAccess($forceReload); return isset($this->guildAccess[$guildId]); } public function getGuildLevel($guildId, $forceReload = false) { $this->loadGuildAccess($forceReload); if(isset($this->guildAccess[$guildId])) return $this->guildAccess[$guildId]; else return 0; } */ public function unban() { $this->getDatabaseHandler()->query('DELETE FROM ' . $this->getDatabaseHandler()->tableName('account_bans') . ' WHERE ' . $this->getDatabaseHandler()->fieldName('account_id') . ' = ' . $this->getDatabaseHandler()->quote($this->data['id'])); unset($this->bans); } public function loadBans($forceReload = false) { if(!isset($this->bans) || $forceReload) { $this->bans = new DatabaseList('AccountBan'); $filter = new SQL_Filter(new SQL_Field('account_id'), SQL_Filter::EQUAL, $this->data['id']); $this->bans->setFilter($filter); } } public function isBanned($forceReload = false) { $this->loadBans($forceReload); return count($this->bans) > 0; } public function getBanTime($forceReload = false) { $this->loadBans($forceReload); $lastExpires = 0; foreach($bans as $ban) { if($ban->getExpiresAt() <= 0) { $lastExpires = 0; break; } if($ban->getExpiresAt() > time() && $ban->getExpiresAt() > $lastExpires) $lastExpires = $ban->getExpiresAt(); } return $lastExpires; } public function delete() { $this->getDatabaseHandler()->query('DELETE FROM ' . $this->getDatabaseHandler()->tableName(self::$table) . ' WHERE ' . $this->getDatabaseHandler()->fieldName('id') . ' = ' . $this->getDatabaseHandler()->quote($this->data['id'])); unset($this->data['id']); } public function setID($value){$this->data['id'] = $value;} public function getID(){return $this->data['id'];} public function setName($value){$this->data['name'] = $value;} public function getName(){return $this->data['name'];} public function setPassword($value) { $this->data['password'] = Website::encryptPassword($value, $this); } public function getPassword(){return $this->data['password'];} public function setPremDays($value){$this->data['premdays'] = $value;} public function getPremDays(){return $this->data['premdays'] - (date("z", time()) + (365 * (date("Y", time()) - date("Y", $this->data['lastday']))) - date("z", $this->data['lastday']));} public function setLastDay($value){$this->data['lastday'] = $value;} public function getLastDay(){return $this->data['lastday'];} public function setMail($value){$this->data['email'] = $value;} public function getMail(){return $this->data['email'];} public function setKey($value){$this->data['key'] = $value;} public function getKey(){return $this->data['key'];} /* * Custom AAC fields * create_ip , INT, default 0 * premium_points , INT, default 0 * page_access, INT, default 0 * location, VARCHAR(255), default '' * rlname, VARCHAR(255), default '' */ public function setCreateIP($value){$this->data['create_ip'] = $value;} public function getCreateIP(){return $this->data['create_ip'];} public function setCreateDate($value){$this->data['creation'] = $value;} public function getCreateDate(){return $this->data['creation'];} public function setPremiumPoints($value){$this->data['premium_points'] = $value;} public function getPremiumPoints(){return $this->data['premium_points'];} public function setPageAccess($value){$this->data['page_access'] = $value;} public function getPageAccess(){return $this->data['page_access'];} public function setLocation($value){$this->data['location'] = $value;} public function getLocation(){return $this->data['location'];} public function setRLName($value){$this->data['rlname'] = $value;} public function getRLName(){return $this->data['rlname'];} public function setFlag($value){$this->data['flag'] = $value;} public function getFlag(){return $this->data['flag'];} /* * for compability with old scripts */ public function getEMail(){return $this->getMail();} public function setEMail($value){$this->setMail($value);} public function getPlayersList(){return $this->getPlayers();} public function getGuildAccess($guildID){return $this->getGuildLevel($guildID);} public function isValidPassword($password) { return ($this->data['password'] == Website::encryptPassword($password, $this)); } public function find($name){$this->loadByName($name);} public function findByEmail($email){$this->loadByEmail($email);} public function isPremium(){return ($this->getPremDays() > 0);} public function getLastLogin(){return $this->getLastDay();} } E esse é o (htdocs\classes\databaselist.php) Mostrar conteúdo oculto <?php if(!defined('INITIALIZED')) exit; class DatabaseList extends DatabaseHandler implements Iterator, Countable { public $data; public $iterator = 0; public $class; public $table; public $tables = array(); public $fields = array(); public $extraFields = array(); public $filter; public $orders = array(); public $limit; public $offset = 0; public function __construct($class = null) { if($class !== null) $this->setClass($class); } public function load() { $fieldsArray = array(); if(count($this->fields) > 0) foreach($this->fields as $fieldName) $fieldsArray[$fieldName] = $this->getDatabaseHandler()->tableName($this->table) . '.' . $this->getDatabaseHandler()->fieldName($fieldName); if(count($this->extraFields) > 0) foreach($this->extraFields as $field) if(!$field->hasAlias()) $fieldsArray[] = $this->getDatabaseHandler()->tableName($field->getTable()) . '.' . $this->getDatabaseHandler()->fieldName($field->getName()); else $fieldsArray[] = $this->getDatabaseHandler()->tableName($field->getTable()) . '.' . $this->getDatabaseHandler()->fieldName($field->getName()) . ' AS ' . $this->getDatabaseHandler()->fieldName($field->getAlias()); $tables = array(); foreach($this->tables as $table) $tables[] = $this->getDatabaseHandler()->tableName($table); $filter = ''; if($this->filter !== null) $filter = ' WHERE ' .$this->filter->__toString(); $order = ''; $orders = array(); if(count($this->orders) > 0) { foreach($this->orders as $_tmp_order) $orders[] = $_tmp_order->__toString(); if(count($orders) > 0) $order = ' ORDER BY ' . implode(', ', $orders); } $limit = ''; if($this->limit !== null) $limit = ' LIMIT ' . (int) $this->limit; $offset = ''; if($this->offset > 0) $offset = ' OFFSET ' . (int) $this->offset; $query = 'SELECT ' . implode(', ', $fieldsArray) . ' FROM ' . implode(', ', $tables) . $filter . $order . $limit . $offset; $this->data = $this->getDatabaseHandler()->query($query)->fetchAll(); } public function getResult($id) { if(!isset($this->data)) $this->load(); if(isset($this->data[$id])) { if(!is_object($this->data[$id])) { $_tmp = new $this->class(); $_tmp->loadData($this->data[$id]); return $_tmp; } else return $this->data[$id]; } else return false; } public function addExtraField($field) { $this->extraFields[] = $field; $this->addTables($field->getTable()); } public function addOrder($order) { $this->orders[] = $order; } public function setClass($class) { $this->class = $class; $instance = new $this->class(); $this->fields = $instance::$fields; if(isset($instance::$extraFields)) foreach($instance::$extraFields as $extraField) { if(!isset($extraField[2])) $this->extraFields[] = new SQL_Field($extraField[0], $extraField[1]); else $this->extraFields[] = new SQL_Field($extraField[0], $extraField[1], $extraField[2]); $this->tables[$extraField[1]] = $extraField[1]; } $this->table = $instance::$table; $this->tables[$instance::$table] = $instance::$table; } public function setFilter($filter) { $this->addTables($filter->getTables()); $this->filter = $filter; } public function setLimit($limit) { $this->limit = $limit; } public function setOffset($offset) { $this->offset = $offset; } public function addTables($tables) { if(is_array($tables)) { foreach($tables as $table) if($table != '' && !in_array($table, $this->tables)) $this->tables[$table] = $table; } elseif($tables != '' && !in_array($tables, $this->tables)) $this->tables[$tables] = $tables; } public function current() { return $this->getResult($this->iterator); } public function rewind() { if(!isset($this->data)) $this->load(); $this->iterator = 0; } public function next() { ++$this->iterator; } public function key() { return $this->iterator; } public function valid() { return isset($this->data[$this->iterator]); } public function count() { if(!isset($this->data)) $this->load(); return count($this->data); } }
Postado Julho 17, 2014 10 anos Solução Em 17/07/2014 em 21:50, zaroth1 disse: Strict Standards: date() [function.date]: It is not safe to rely on the system's timezone settings. Please use the date.timezone setting, the TZ environment variable or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'America/Sao_Paulo' for '-3.0/no DST' instead in C:\xampp\htdocs\classes\account.php on line 189 Entre em system/load.init e depois de session_start(); coloque isso na linha abaixo: date_default_timezone_set("America/Sao_Paulo"); Em 17/07/2014 em 21:50, zaroth1 disse: Parse error: syntax error, unexpected T_PAAMAYIM_NEKUDOTAYIM in C:\xampp\htdocs\classes\databaselist.php on line 105 Esse erro é porque o seu php é menor que o que o site precisa para rodar, tente baixar uma versão mais recente do webserver que tu usa! [XAMPP] Aguardo resposta!
Postado Julho 17, 2014 10 anos Autor Ae mano, obrigado, esse problema ficou normal, agora, meu Xampp é versão 1.6.5 Que versão eu deveria baixar pra que ele rode normalmente?
Postado Julho 17, 2014 10 anos Eu sempre usei o XAMPP 1.7.3., mas ultimamente devido a versatilidade eu venho usando USBWEBSERVER, pesquise na net, muito simples e pratico
Participe da conversa
Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.