pdo — PHP PDOStatement подготовить и bindValue методы

почему не работает код ниже?

 $pdo = new PDO('mysql:dbname=_test;host=localhost','root', '');
$select=$pdo->prepare("SELECT * FROM test WHERE th=:name");
$select->bindValue(":name","1");
print_r($select);

когда я печатаю $ выберите результат:

 PDOStatement Object ( [dbh] => PDO Object ( ) [queryString] => SELECT * FROM test   WHERE th=:name )

Спасибо!

-1

Решение

Вы должны добавить обработку ошибок в вызовы вашей базы данных, например, установив PDO для выдачи исключений.

Ваша текущая проблема заключается в том, что вы на самом деле не execute() заявление:

$select->bindValue(":name","1");
$select->execute();

После этого вам нужно будет fetch() Результаты из набора результатов, чтобы реально увидеть значения в вашей базе данных:

while ($row = $select->fetch()) {
// do something with the data
}

Редактировать: Чтобы включить исключения в PDO (вам пока не нужно их перехватывать, система выдаст необработанные ошибки исключений):

$pdo = new PDO('mysql:dbname=_test;host=localhost','root', '', array(PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION));
3

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]