gpt4 book ai didi

php - 从mysql中的多个表中选择数据?

转载 作者:行者123 更新时间:2023-11-29 10:48:08 24 4
gpt4 key购买 nike

我在数据库中有 4 个表,所有表中都有一个唯一的 clientid,但其余字段不同。如果我们搜索任意一个client id,如何从any表中获取与搜索到的client id对应的存储信息。

$clientid=$_POST['client'];
$query = "SELECT * FROM 'pfs'
JOIN 'pfssurety'
JOIN 'iso'
JOIN 'incometax'
WHERE clientid='$clientid'";
$result = mysql_query($query)or die (mysql_error());

while($row=mysql_fetch_array($result)) {
echo $row['clientid'];
echo $row['name'];
}

最佳答案

这是一个使用 mysqli 的实现,它可以防止 $clientid 的注入(inject),其中 id 是一个数字网格,然后为零,因为 AUTO_INCRMENT 列永远不会有 0 值开始在 1

// as this is an int using inval will force it to be a valid whole number 
// basic SQL Injection Protection for a fixed id

$clientid = intval($_POST['client']);
if($clientid === 0){
// it was not a valid number as an auto_increment field in mysql can never be 0
die("invalid client");
}

$query="SELECT * FROM `pfs`
JOIN `pfssurety` ON pfssurety.clientid = pfs.clientid
JOIN `iso` ON iso.clientid = pfs.clientid
JOIN `incometax` ON incometax.clientid = pfs.clientid
WHERE pfs.clientid=$clientid";

$result= mysqi_query($query) or die("Query Failed");

while($row=mysql_fetch_array($result))
{
echo $row['clientid'];
echo $row['name'];
}

关于php - 从mysql中的多个表中选择数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44201459/

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