gpt4 book ai didi

php - 在php中显示相关表中的数据

转载 作者:搜寻专家 更新时间:2023-10-30 22:28:33 24 4
gpt4 key购买 nike

我有两个表,一个是书,另一个是作家。它们通过一对多关系相关,即 writer 中的主键,即 w_id 是 b_writer 命名的书中的外键。但是当我在 php 脚本中打印 b_writer 时,它会打印 id,即一个数字,但我想要作者的名字。我该怎么做?

$connect = mysqli_connect("localhost", "root", "", "ecom");  
$query = "SELECT * FROM books WHERE b_id = '".$_POST["book_id"]."'";
$result = mysqli_query($connect, $query);
while($row = mysqli_fetch_array($result))
{
echo $row["b_id"] $row["b_desc"] $row["b_name"] $row["b_writer"];
}

打印b_writer时如何打印作者的名字。

最佳答案

您应该使用连接从两个表中获取数据,例如:

"SELECT b.*, w.* 
FROM books as b
INNER JOIN writer as w on b.b_writer = w.w_id
WHERE b_id = '".$_POST["book_id"]."'";

但要小心在查询中使用 var,你有 sqlinjection 的风险

为了避免这种情况您应该使用准备语句和绑定(bind)参数,例如:

$stmt = $db->prepare("SELECT b.*, w.* 
FROM books as b
INNER JOIN writer as w on b.b_writer = w.w_id
WHERE b_id =?");
$stmt->bind_param("i",$_POST["book_id"] );
$stmt->execute();

关于php - 在php中显示相关表中的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47847680/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com