Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Неизвестная переменная из класса.
Форумы портала PHP.SU » » Вопросы новичков » Неизвестная переменная из класса.

Страниц (1): [1]
 

1. No0k - 13 Ноября, 2014 - 16:17:31 - перейти к сообщению
Можешь подсказать почему когда вывожу:
Game::start($user_id); потом делаю запрос к $characters - он выдает $characters неизвестной переменной
Class:
PHP:
скопировать код в буфер обмена
  1. class Game {
  2.     static function start($user_id){
  3.         if ($user_id) {
  4.             //return self::buff();
  5.             return self::characters();
  6.         }
  7.         else {
  8.             return __('Что бы играть нужно авторизоватся.');
  9.         }
  10.     }
  11.     static function characters(){
  12.         global $sql,$user;
  13.         $characters = $sql->query("SELECT * FROM `characters` WHERE `id` = '".$user['id']."' LIMIT 1")->fetch();
  14.         return $characters;
  15.     }
  16. }
2. esterio - 13 Ноября, 2014 - 16:38:41 - перейти к сообщению
может $user_id нужно передать в characters.
3. No0k - 13 Ноября, 2014 - 16:44:45 - перейти к сообщению
esterio пишет:
может $user_id нужно передать в characters.

Вы чуть не поняли, у меня в characters берется глобальная переменная $user и с нее я беру id.
Суть в том что если работать так:
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2.  
  3. //$headmod = 'okrestnosti';//фикс. места
  4.  
  5. include '../engine/includes/start.php';
  6. include incDir. 'head.php';
  7. Game::start($user_id);
  8. Game::going();
  9. $userPlace  = $sql->query("SELECT * FROM `place` WHERE `nick` = '".$user['nick']."' LIMIT 1")->fetch();
  10. $world = $sql->query("SELECT * FROM `world` WHERE `city` = '$characters[city]' and `x`='$userPlace[x]' and `y`='$userPlace[y]'")->fetch();
  11.  
  12.  
  13. ?>

Выдает: Undefined variable: characters | Файл X:\home\dayz\www\pages\world.php | Линия - 10
4. esterio - 13 Ноября, 2014 - 16:59:46 - перейти к сообщению
No0k пишет:
$world = $sql->query("SELECT * FROM `world` WHERE `city` = '{$characters[city]}' and `x`='{$userPlace[x]}' and `y`='{$userPlace[y]}'")->fetch();


и в догонку http://php.net/manual/ru/languag...iables.scope.php
там нету такой переменной, она обьявлена внутри метода класса

 

Powered by ExBB FM 1.0 RC1