【发布时间】:2014-01-16 19:11:18
【问题描述】:
所以我试图从数据库中获取多个东西。它不工作。 在我的函数文件中,我有:
public function getAllMultiple($username, $course) {
foreach ($course as $key) {
$query = $this->database->db->prepare("SELECT * FROM `status` WHERE `posted_by` = ? OR `shared` = ? ORDER BY `date_added` DESC");
$query->bindValue(1, $username);
$query->bindValue(2, $key['1']);
try {
$query->execute();
} catch (PDOException $e) {
die($e->getMessage());
}
return $query->fetchAll();
}
}
在我的提要功能中,我有:
$array = $course->getAllAsMember($username);
print_r($course->getAllMultiple($username, $array);
我有两门课程。我有一个药物课程和一个类课程。不幸的是,它只返回药物课程。有什么我做错了吗?
【问题讨论】:
-
您用每次迭代替换
$query的值,并且从不执行它。我很惊讶它的工作。如果上面不是您的实际代码,请更新它。 -
您需要提供更多代码,没有
fetchAll并且您没有从您的函数中返回任何内容。您还应该在循环之前准备查询,因为您只需要这样做一次。 -
刚刚更新了@jeroen
-
你的函数失败了,因为它返回的那一刻,它停止了函数的执行并且永远不会到达第二个数组项。
-
不提供所有代码是我的错。
标签: php arrays pdo fetch fetchall