2013-11-23 1 views
0

index.phpвызов функции члена Count() на не-объект в

$user= DB::getInstance()->get('users',array('user_id','=','1')); 
if(!$user->Count()){ 
    echo 'No User'; 
}else{ 
    echo 'User Exists'; 
} 

DB.php

class DB { 
    private static $_instance = null; 
    private $_pdo, 
    $_query, 
    $_error = false, 
    $_results, 
    $_count = 0; 
    public function Count(){ 
     return $this->_count; 
    } 
} 

прибудете функция

class Yapilandirma{ 
    public static function get($yol = null){ 
     if($yol){ 
      $yapilandirma = $GLOBALS['yapilandirma']; 
      $yol = explode('/',$yol); 
      foreach($yol as $bit){ 
       if(isset($yapilandirma[$bit])) { 
        $yapilandirma = $yapilandirma[$bit]; 
       } 
      } 

      return $yapilandirma; 
     } 

     return false; 
    } 
} 

Я проверил другие 15 + темы с тем же заголовком, но я не мог решить его. Нужно добавить больше деталей, чтобы опубликовать все еще, он хочет подробно ом.

+0

Я нашел ответ здесь. http://stackoverflow.com/questions/33162167/fatal-error-call-to-a-member-function-count-on-a-non-object-in-not-solved?rq=1 – Creative3

ответ

1

Count - это метод класса DB. Но вы устанавливаете $user на результат get(), а не getInstance().

$instance = DB::getInstance(); 
$instance->get('users',array('user_id','=','1')); 
if (!$instance->Count()) { 
    echo 'No user'; 
} else { 
    echo 'User exists'; 
} 
+0

ошибок нет но не считая sql – user3018898

+0

Вы не отправили метод 'get'. Устанавливает ли он '_count'? – Barmar

+0

Я не знаю, что я следую видеоуроку. http://www.youtube.com/watch?v=PaBWDOBFxDc&list=PLfdtiltiRHWF5Rhuk7k4UAU1_yLAZzhWc – user3018898

0

Я натыкался на этот учебник и имел такую ​​же проблему, как пользователь имел, & я в конце концов сдался. Я долго работал над ним, но так и не смог понять. Если кто-то захочет провести качели, я бы опубликовал исправление на другой доске объявлений и помог собрать кучу людей. Учебник является удивительным, и система замечательная, но, похоже, существует затяжная проблема, которая в конечном итоге висит много людей.

http://www.youtube.com/watch?v=PaBWDOBFxDc&list=PLfdtiltiRHWF5Rhuk7k4UAU1_yLAZzhWc

Количество общественная функция() {

возврата $ это -> _ рассчитывать; }

Фактическое количество слов выделено жирным шрифтом ... где остальные имена функций находятся только в обычном черном шрифте. даже если вы не хотите тратить время на просмотр видео, некоторые могут хотя бы сказать, почему это ????? Я использую notepad ++

+0

Потому что 'count()' является фактической функцией в PHP, а Notepad ++ имеет большинство функций PHP, выделенных жирным шрифтом. – TheNytangel

Смежные вопросы