Intereting Posts
PHP + JQuery – Как использовать эти два вместе? См. Мой пример Перенаправить папку на другой сервер Как создать файл .doc слова из шаблона .doc в php Почему переменные PHP начинаются с символа знака $? Являются ли подготовленные PDO заявления достаточными для предотвращения SQL-инъекций? Как предотвратить межсайтовый скриптинг Логический режим, где запрос соответствия с динамическим значением, используя PHP MySQLi Подготовленные заявления Является ли функция count count () O (1) или O (n) для массивов PHP? Ошибка в кодеригенере javascript Ошибка анализа XML-кода – дополнительный контент в конце документа Как создать параметр выбора UITableView аналогично в настройках iOS в Swift? Создание учетной записи пользователя сеанса php Как использовать параметр $ _GET для создания дружественных URL-адресов seo? Проверка формы – стандартное решение? Не удается запустить или остановить php-fpm на Ubuntu

Обрезаемая фатальная ошибка: объект класса __PHP_Incomplete_Class

я получаю эту ошибку

Ловкая фатальная ошибка: объект класса __PHP_Incomplete_Class не может быть преобразован в строку в user.php в строке 248, это строка

function loadUser($userID) { global $db; $res = $db->getrow("SELECT * FROM `{$this->dbTable}` WHERE `{$this->tbFields['userID']}` = '".$this->escape($userID)."' LIMIT 1"); if ( !$res ) return false; $this->userData = $res; $this->userID = $userID; $_SESSION[$this->sessionVariable] = $this->userID; return true; } 

видеть

 var_dump($_SESSION); array(1) { ["user"]=> &object(__PHP_Incomplete_Class)#1 (12) { ["__PHP_Incomplete_Class_Name"]=> string(11) "jooria_user" ["dbTable"]=> string(5) "users" ["sessionVariable"]=> string(4) "user" } } 

Этот объект хранится в сеансе? Вы объявили свой класс перед извлечением объекта из сеанса?

В любом случае, я предполагаю, что вы где-то пропустили объявление класса.

EDIT: ваш класс jooria_user не объявляется перед использованием. Вот почему вы получаете эту ошибку.

Скажите, что у вас есть это:

 <?php session_start(); class A {} $a = new A; $_SESSION['A'] = $a; 

Затем вы пытаетесь получить к нему доступ в этом скрипте:

 <?php session_start(); $a = $_SESSION['A']; var_dump($a); /* outputs: object(__PHP_Incomplete_Class)#1 (1) { ["__PHP_Incomplete_Class_Name"]=> string(1) "A" } */ 

Теперь, если вы это сделаете:

 <?php class A {} // declares the class here session_start(); $a = $_SESSION['A']; var_dump($a); /* outputs: object(A)#1 (1) { } */ 

Похоже, предоставленный аргумент функции $userID является объектом, и здесь возникает ошибка:

 $this->escape($userID) 

(Я не вижу никаких дополнительных операций с строкой, которые могли бы вызвать такую ​​ошибку).

Итак, проверьте, что такое аргумент, с которым вы вызываете loadUser() .

Сначала я бы удостоверился, что все { } фигурные скобки имеют пары в нужном месте. A } отсутствующее в последней строке, было бы моим предположением.