gpt4 book ai didi

php - 使用数组值作为查询中的 where 子句并递增查询的编号 php

转载 作者:行者123 更新时间:2023-11-29 07:35:47 24 4
gpt4 key购买 nike

我有一个通过 GET 方法发送到另一个页面的 id 数组,在该页面中我在“,”上爆炸并将 $_GET 值保存在一个数组中,我的目标是使用数组中的每个 id相同的查询,其中每个查询之间的差异将仅在 id= 从数组中检索到的 id,然后获取一个名为 amount 的列名并将其与其他数量的其他 id 相加,我该如何实现?我可以循环查询的变量名吗?喜欢增量 $sql.$i 吗?

我当前的查询:

for ($i=0;$i<count($claimID);++$i) {
$sql="SELECT ... and subscriptions.subscription_Id=".$claimID[$i]; } // should i try to figure out a way to increment $sql with $i ?

然后

$resultSql = $conn->query($sql); // I should loop somehow
$row = mysqli_fetch_array($resultSql);

在此之后我想让所有查询选择的每一列“数量”都在不同的 ids 上并+它们,我能得到一些提示/建议吗?

最佳答案

你可以做的是:

$claimID = implode(',', $_GET['ids']);
$sql = 'SELECT
SUM(amount),
GROUP_CONCAT( subscription_Id ),
GROUP_CONCAT( amount )
... and subscriptions.subscription_Id
IN (' . $claimID . ')';

您将获得与您刚刚收到的 IDS 相关的所有金额的总和。

但要注意SQL 注入(inject),因为您使用的是纯 SQL。

检查像 mysqli_real_escape_string 这样的函数。

关于php - 使用数组值作为查询中的 where 子句并递增查询的编号 php,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48921460/

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