Php 存在url参数时mysqli语句不工作

Php 存在url参数时mysqli语句不工作,php,html,mysqli,Php,Html,Mysqli,我有一个新闻管理页面,其中包括以下标记: <ul> <?php newsArchive(); ?> </ul> 然后我得到了错误:致命错误:对 为什么会这样?这是运行相同脚本的同一页。没有URL参数也可以正常工作,但这些参数不应该干扰新闻存档。因此,问题似乎实际上是页面上的其他prepare语句 我在结束发言时并没有举例说明: $newsArchive->close(); 因此,这不允许下一个连接正常工作。这意味着prepare语句不会返回有效的

我有一个新闻管理页面,其中包括以下标记:

<ul>
  <?php newsArchive(); ?>
</ul>
然后我得到了错误:
致命错误:对


为什么会这样?这是运行相同脚本的同一页。没有URL参数也可以正常工作,但这些参数不应该干扰新闻存档。

因此,问题似乎实际上是页面上的其他prepare语句

我在结束发言时并没有举例说明:

$newsArchive->close();

因此,这不允许下一个连接正常工作。

这意味着
prepare
语句不会返回有效的
mysqli\u stmt
。用于检索最后一条错误消息。顺便说一句,在将数据输出到HTML标记时始终使用
htmlspecialchars
,否则您的代码易受XSS攻击。那么,如果您使用
if($newsArchive=$mysqli->prepare('SELECT news\u id,news\u title,news\u date FROM news ORDER by news\u id DESC'),当您单击新闻文章时调用的函数在哪里呢
只有当查询正确时,才会执行该查询。正确,该查询与任何GET参数都没有(明显的)联系–因此:您是否绝对确定您看到的是正确的查询?也许您应该创建一个答案并接受它,只是为了人们(像我一样)不要一直在这里结束。
mydomain.com/news?edit-news=1
$newsArchive->close();