我有一个dbfunctions类,它具有检索数据并将数据写入数据库的功能。但是,检索不起作用,我无法理解它为什么不起作用。
读取函数如下所示:
public function haeParametreittaTietokannasta($f_sql) {
try {
$this->sql_lause = $this->db->prepare($f_sql);
$this->haku = $this->sql_lause->execute();
} catch (PDOException $ex) {
die("Tapahtui virhe tietoja noudettaessa : " . $ex->getMessage());
}
if(!$this->haku) {
$this->tulos = $this->haku->fetchAll();
return $this->tulos;
} else {
return false;
}
} // END FUNCTION
这就是我调用函数的方式:
$countries = $dabase->haeParametreittaTietokannasta("SELECT * FROM countries");
查询始终返回false,我尝试显示错误信息,并说:数组(0 =>' 00000',1 => NULL,2 => ; NULL,)(是的,我在主代码中创建了一个新对象。)
我刚开始学习PHP,可能会出现一个简单的错误,我无法看到......
答案 0 :(得分:1)
条件有错误:
if(!$this->haku) {
应该是
if($this->haku) {
$this->tulos = $this->sql_lause->fetchAll();
PDOStatement::execute()
返回一个布尔值。您无法将其用于fetchAll()
。