gpt4 book ai didi

php - 有没有办法从查询字符串中获取值 [product_code]1INSAZE 并使用它来运行 sql 查询

转载 作者:行者123 更新时间:2023-11-29 05:47:08 26 4
gpt4 key购买 nike

我正在尝试从如下所示的查询字符串中获取数据:

http://127.0.0.1:8000/product/controller/php?ids[]=[product_code]1INSAZE

如果我这样做:

$ids = $request->query->get('ids', null);

and dump it I get something like this :

array:1 [▼ 0 => "[product_code]1INSAZE" ] ]

如果我 dump($ids[0]) 我得到:

"[product_code]1INSAZE"

我需要那个字符串才能做到这一点:

$ids = $ids[0];

$result = $this->createQueryBuilder('k')

->andWhere("k.product_code = $ids")

->getQuery()

->getResult();

return $result;

我收到这个错误:

[Syntax Error] line 0, col 72: Error: Expected Literal, got '['

它与那个 [product_code] 相关吗?如果是,我该如何摆脱它并执行查询?

最佳答案

不要只将变量放在引号中,这是不安全的,不是使用 QueryBuilder 的首选方式。使用参数。

andWhere("k.product_code = :ids");
->setParameter('ids', $ids);

如果这不起作用,请尝试使用“\[”转义“[”

编辑:使用了错误的框架语法

关于php - 有没有办法从查询字符串中获取值 [product_code]1INSAZE 并使用它来运行 sql 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58932730/

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