2015-07-26 7 views
-1

У меня возникли проблемы с получением столбца int из моей базы данных. У меня есть этот код:PHP Невозможно получить переменную из базы данных MySQL

<?php 
    $raffleid = 1; 

    $checkSlots = "SELECT slots FROM raffle WHERE raffleid = '$raffleid'"; 
    $btns = $pdo->query($checkSlots); 
    echo (string)$btns; 

?> 

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

"Object of class PDOStatement could not be converted to string"

Я просто не могу показаться, чтобы получить его эхо. Я попытался привязать его к строке и просто попытался выполнить echo $ btns. Вот фотография моей базы данных.

http://imgur.com/YGxg6gC

ответ

0

PDO создает объект, из которого вы должны получить ваши данные. Объект состоит из строк с столбцами строк в виде массива:

$row=$btns->fetch(); // Gets a row 
echo $row["slots"]; 

должно работать.

+0

Могу ли я использовать это в другом месте в моем php-файле? Например, если я хочу это назвать? – Jop

+0

Каждый раз, когда вы вызываете fetch, он пытается получить новую строку из результата запроса, поэтому обычно вы создаете цикл для извлечения данных и использования их сразу. –

0

Согласно manual$ btns = $ pdo-> query ($ checkSlots); возвращает объект :

PDO::query — Executes an SQL statement, returning a result set as a PDOStatement object

Таким образом, вы не можете просто повторить то, что он возвращается, вместо этого вы должны выполнить какие-либо из предложенных способов объекта, например: выборки() метода.

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