3 回答

TA貢獻1796條經(jīng)驗 獲得超10個贊
您正在使用 table 的別名,但在 select 中您使用的是 table 的名稱..這會給您帶來錯誤。
同樣在 where 條件綁定參數(shù)
試試這個代碼:
$uid = $_GET['pid'];
$query = "SELECT tableUsers.*, tableProduct.* FROM users tableUsers JOIN all_product tableProduct ON tableUsers.uid = tableProduct.product_id WHERE tableProduct.product_id = :product_id";
$statement = $con->prepare($query);
$statement->bindParam(':product_id', $uid, PDO::PARAM_STR);
$statement->execute();
$result = $statement->fetchAll();
foreach($result as $row){
echo $row['id'];
echo $row['username'];
echo $row['p_name'];
}

TA貢獻1829條經(jīng)驗 獲得超4個贊
我認為您的查詢有點錯誤。你應該這樣做:
table_name as table_alias
所以在你的情況下:
$query = "SELECT users.*, tableProduct.* FROM tableUsers as users JOIN all_product as tableProduct ON tableUsers.uid = tableProduct.product_id WHERE tableProduct.product_id = tableUsers.$uid";
br

TA貢獻1853條經(jīng)驗 獲得超9個贊
確保你真的有一個名為 users 的表,如果你使用表別名,請嘗試在任何地方使用這些
$query = "SELECT tableUsers.*, tableProduct.*
FROM users tableUsers
JOIN all_product tableProduct ON tableUsers.uid = tableProduct.product_id
WHERE tableProduct.product_id = tableUsers.$uid";
無論如何你不應該在 sql 中使用 php var .. 你有 sqljection 的風險.. 嘗試看看準備好的語句和綁定參數(shù)
- 3 回答
- 0 關(guān)注
- 184 瀏覽
添加回答
舉報