Я только начинаю с PDO и просматриваю несколько руководств для ответа, но я просто не могу заставить его работать.undefined fetchAll и выборка в возвращаемом PDOStatement
Я получил
Notice: Undefined property: PDOStatement::$fetch in E:\-------- on line 22
Result: 1
с
$dsn = "mysql:host=localhost;dbname=the_database;";
try {
$dbh = new PDO($dsn, "root", "");
$dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch (PDOException $e){
die("failed conexion: ".$e->getMessage());
}
$query = "SELECT MAX(price) AS max, MIN(price) AS min FROM cellphones";
try {
$sth = $dbh->prepare($query);
$sth->execute();
$sth->setFetchMode(PDO::FETCH_ASSOC);
$result = $sth->fetchAll;
}
catch(PDOException $e){
echo $e->getMessage();
}
die("<br />Result: ".print_r($result, true));
я получаю тот же результат с
$sth = $dbh->query($query);
$result = $sth->fetchAll;
и
$sth = $dbh->prepare($query);
$sth->execute();
$result = $sth->fetch;
Что я могу сделать, так это то, что он может возвращать количество результатов Но почему? И почему это дает мне Уведомление о fetch/fetchAll даже не объявлено. Я тоже не получаю никаких исключений.
Кроме того, несвязанный, это неправильное использование 'print_r'. Если вы конкатенируете, используйте его так: 'print_r ($ result, true)' –
спасибо! теперь исправлено – Sdlion