2012-02-21 3 views
-2

У меня очень странная проблема, у меня есть страница профиля пользователя, которую я создаю. У меня есть функция PDO, которая получает набор результатов, используя имя пользователя запрашиваемого пользователя. Однако, когда я возвращаю массив, я пытаюсь использовать данные из него, я получаю ошибку «неопределенного индекса». Но странно то, что когда я var_dump массив, я могу видеть все значения, которые в нем!PHP Неопределенный индекс, но var_dump говорит иначе

$_GET['name'] = (isset($_GET['name']) ? $_GET['name'] : ''); 
$req = $_GET['name']; 
$info = array(); 
$info = getInfo($req); 
echo($info['userid']); 
var_dump($info); 

Функция получения информации получает набор результатов из PDO. Например, если бы я попытался использовать $info['userid'] я получаю ошибку, но если я Var дамп я могу видеть

["userid"]=> string(1) "1" [3]=> string(1) "1" 

Update Вот функция GetInfo.

function getInfo($req){ 
$db = new database(DB_USER,DB_PASS,DB_NAME); 
$rs = $db->query('SELECT name, username, level, userid FROM users WHERE username = ?') 
    ->bind(1, $req) 
    ->resultset(); 
return $rs; 
} 

База данных немного длинная, чтобы опубликовать ее, если это поможет, я могу опубликовать ее.

+1

Что такое 'getInfo'? –

+0

Вы уверены, что это вызов 'echo', передающий ошибку? Что делает функция 'getInfo()'? –

+0

@Michael GetTnfo(); функцию PDO для получения набора результатов, а затем возвращает его. –

ответ

0

Без источника getInfo() лучше всего предположить, что запрос PDO возвращает объект вместо массива, поэтому, пожалуйста, попробуйте использовать echo $ info-> userid;

Дополнительная информация о режимах выборки here.

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