我一直在尝试将代码转换为使用 mysqli 准备好的语句(从 mysqli 转换为准备好的语句)。我有以下代码,我无法消除呼叫中的错误消息。相反,它吐出“PHP 致命错误:...”,这会暂停脚本,因此错误代码不会执行,但由于错误正在吐出,因此只向用户显示标题。
另请注意,我还尝试转换为使用本机 php 错误处理,如参考文章中“您的常识”所述,但又恢复为传统的“if (! ...) {...}”由于该人未提及的问题而导致的代码样式(通过进行该转换)。我可以看到所有这些修改都被颠倒了。
现在对于代码(请注意,故意将 DB 表命名为错误以引发错误以检查代码)...
$SQL = "SELECT * FROM Issues2 WHERE id=? AND disabled='0' LIMIT 1";
if (! $PRE = @mysqli_prepare($linkDB, $SQL)) {
echo "<f><msg>ERROR: Could not prepare query: ".$SQL.", ".mysqli_error($linkDB)."</msg></f>";
} else {
...
}
我曾尝试使用和不使用前置的“@”符号来调用 mysqli_prepare() 调用,但没有运气......我应该收到“错误:无法准备......”消息,但我只是得到了 XML 标头独自的。任何帮助,将不胜感激!
拉莫斯之舞