gpt4 book ai didi

PHP/MYSQL - 通过 as php 变量进行 mysql 查询相关的语法错误

转载 作者:行者123 更新时间:2023-11-29 06:13:18 24 4
gpt4 key购买 nike

我在以下变量中遇到语法错误问题:

$uploadQuery = "
LOAD DATA LOCAL INFILE '".$docRoot."/../../includes/dbUploads/".$fileToUpload."'
INTO TABLE `promotions`
FIELDS TERMINATED BY ','
ENCLOSED BY '"'
ESCAPED BY '\\'
LINES TERMINATED BY '\r\n'
";

我知道它与 LOAD DATA... 行中 ' 字符的转义有关。但当谈到问题到底是什么,或者如何以正确的方式重写此查询时,我感到很困惑。

所以,我的问题是这样的:

我如何以正确的方式重写指定的变量,以免出现与之相关的语法错误。

如果有人对此有任何建议或意见,我们将不胜感激。

谢谢!

最佳答案

缺少转义字符,这是正确的字符串:

$uploadQuery = "
LOAD DATA LOCAL INFILE '".$docRoot."/../../includes/dbUploads/".$fileToUpload."'
INTO TABLE `promotions`
FIELDS TERMINATED BY ','
ENCLOSED BY '\"'
ESCAPED BY '\\'
LINES TERMINATED BY '\\r\\n'
";

请注意第 5 行额外的 \。它将 " 视为字符串终止符。另一个问题(不会导致语法错误)位于第 7 行,您需要转义反斜杠。

附言标记分析器甚至发现了它:P

编辑:您可能还需要将第 7 行更改为 ESCAPED BY '\\\\' 因为在 PHP 解析它之后它会减少为 ESCAPED BY '\\'

关于PHP/MYSQL - 通过 as php 变量进行 mysql 查询相关的语法错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8071192/

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