查询在mysql终端中起作用,但在php中不起作用

烟灰缸

我用PHP动态构建查询,当我尝试执行它时,它失败了。当我复制生成的查询并将其粘贴到mysql终端并运行它时,它可以正常工作。我得到的错误是“您的SQL语法有错误;请检查与MySQL服务器版本相对应的手册,以找到在第1行的'>'附近使用的正确语法”,用于以下查询:

UPDATE events SET event = 'orgo lecture', start = '2014-07-24 16:00:00' WHERE userID = 1 AND eventID = 5

以下是用于动态生成查询的代码:

$query = "UPDATE events SET ";
$query_list = array();
if ($set_event) {

    $query_list[] = "event = '{$event}'";

}
if ($set_start) {

    $query_list[] = "start = '{$start}'";

}
if ($set_end) {

    $query_list[] = "end = '{$end}'";

}
$query_list_size = count($query_list);
for ($i = 0; $i < $query_list_size - 1; $i++) {

    $query .= $query_list[$i];
    $query .= ", ";

}
$query .= $query_list[$query_list_size - 1];
$query .= " WHERE userID = {$userID} AND eventID = {$eventID}";
echo $query .= "<br />";
$query_result = mysqli_query($connection, $query) or die(mysqli_error($connection));
戴夫

这个问题是这样的:

echo $query .= "<br />";

应该

echo $query . "<br />";

具有讽刺意味的是,通过检查您的查询您打破了它。

作为旁注,

$query_list_size = count($query_list);
for ($i = 0; $i < $query_list_size - 1; $i++) {

   $query .= $query_list[$i];
   $query .= ", ";

}
$query .= $query_list[$query_list_size - 1];

可以简化为:

 $query .= implode(", ", $query_list);

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

MySQL 在 PHPmyadmin 的终端中工作,但在 php 脚本中不起作用?

此sql查询在mysql中起作用,但在mssql中不起作用

查询在phpmyadmin中起作用,但在PHP中不起作用

从X导入Y在终端中起作用,但在从终端执行的脚本中不起作用

Linux display命令在终端中起作用,但在systemd服务中不起作用

命令在终端中起作用,但在Runtime.exec中不起作用

cp在脚本中不起作用,但在终端中起作用

Scrot程序的别名在.bashrc中不起作用,但在终端中起作用

grep在bash脚本中起作用,但在终端中不起作用

命令在 crontab 中不起作用,但在终端中起作用

MySQL查询在laravel中不起作用

MySQL查询在Qt中不起作用

在 php 中,我的 mysql 选择查询不起作用

搜索查询在PHP中不起作用

Awk线在终端中起作用,但在Gnuplot图中不起作用

ArangoDB-查询在FOXX中不起作用,但在Web界面中起作用

SPARQL查询在Fuseki中起作用,但在Jena TDB中不起作用

日期格式在查询中不起作用,但在 phpmyadmin 中起作用

mysql / connector python查询在mysql中有效,但在python中不起作用

在 PhpMyAdmin 中查询工作但在 php 代码中不起作用

IE CSS不起作用,但在Firefox中起作用

在EXISTS中进行查询不起作用,但在“存在”中起作用

MYSQL插入语句在代码中不起作用,但在phpmyadmin中起作用

为什么此CURL在PHP中起作用但在shell中不起作用

Blackslash在终端中不起作用

javac在ubuntu终端中不起作用

终端命令在 PhpStorm 中不起作用

删除键在终端中不起作用

终端在WebStorm 9中不起作用