我有这个代码,我找不到错误。
public function show(){
$x=NULL;
$owner = $_SESSION['UID'];
$sql = "SELECT
kunde.name AS n1,
rechnung.RechNR AS rnr
FROM `rechnung`AS rr
INNER JOIN `kunde`
ON rr.KID = kunde.KID
WHERE owner = ? ";
$stmt = $this->mysqli->prepare($sql);
$stmt->bind_param("i", $owner);
$stmt->execute();
$result = $stmt->get_result();
while ($obj = $result->fetch_object()) {
$x[] = $obj;
}
return $x;
}
没有加入我得到JOIN的结果我得到了这些消息但我不知道为什么:在非对象上调用成员函数bind_param()
阅读的Thx。
答案 0 :(得分:3)
您必须重写SQL语句并使用字段RechNr
的别名。
而不是rechnung.RechNR
您必须改为使用rr.RechNr
:
$sql = "SELECT
kunde.name AS n1,
rr.RechNR AS rnr
FROM `rechnung` AS rr
INNER JOIN `kunde`
ON rr.KID = kunde.KID
WHERE owner = ? ";
因为您没有使用别名,所以语句的准备工作失败了。