SQLSTATE [HY093]:无效的参数编号:绑定变量的数量与第102行上的令牌数量不匹配

SQLSTATE [HY093]:无效的参数编号:绑定变量的数量与第102行上的令牌数量不匹配,第1张

SQLSTATE [HY093]:无效的参数编号:绑定变量的数量与第102行上的令牌数量不匹配

您没有在此处绑定所有绑定

$sql = "SELECt SQL_CALC_FOUND_ROWS *, UNIX_TIMESTAMP(publicationDate) AS publicationDate     FROM comments WHERe articleid = :art ORDER BY " . mysqli_escape_string($order) . " LIMIT :numRows";$st = $conn->prepare( $sql );$st->bindValue( ":art", $art, PDO::PARAM_INT );

您已经声明了一个名为:numRows的绑定,但实际上从未绑定任何东西。

2019年更新:我一直对此持反对态度,这让我想起了另一个建议

双引号是PHP中的字符串插值,因此,如果要在双引号字符串中使用变量,则使用concat运算符毫无意义。另一方面,单引号不是字符串内插,因此,如果在字符串的末尾仅得到一个变量,则可能有意义,或者仅将其用于整个字符串。

实际上,这里有一个微 *** 作,因为解释器不关心解析字符串以获取变量。这种提升几乎是不明显的,并且在小范围内是完全可以忽略的。但是,在非常大的应用程序中,尤其是旧的老式遗留巨石中,如果像这样使用字符串,可能会显着提高性能。(和IMO,无论如何都更容易阅读)



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5043594.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-15
下一篇 2022-11-15

发表评论

登录后才能评论

评论列表(0条)

保存