使用php代码从mysql wordpress数据库中删除重复注释

使用php代码从mysql wordpress数据库中删除重复注释,php,mysql,Php,Mysql,我有wordpress博客,在一些帖子下有大量评论。我最近发现有些评论被复制了两三次。我想使用php代码从Wordpress的mysql数据库中删除表wp_comments中的重复元素(通过从服务器打开php文件)。我使用了这个代码,但它不起作用。你知道为什么吗?当我运行这个文件时,我有一个空白页(没有错误,但仍然有重复的注释) 代码: 也许你对这段代码有更好的想法?我只是花了些时间格式化你的代码,以便阅读。在你的else之后没有{。我认为如果你在if语句的第一部分中包含它,这是必需的。无论

我有wordpress博客,在一些帖子下有大量评论。我最近发现有些评论被复制了两三次。我想使用php代码从Wordpress的mysql数据库中删除表wp_comments中的重复元素(通过从服务器打开php文件)。我使用了这个代码,但它不起作用。你知道为什么吗?当我运行这个文件时,我有一个空白页(没有错误,但仍然有重复的注释)

代码:



也许你对这段代码有更好的想法?

我只是花了些时间格式化你的代码,以便阅读。在你的
else
之后没有
{
。我认为如果你在if语句的第一部分中包含它,这是必需的。无论如何,在一个应用程序中省略它们,但在另一个应用程序中在同一代码块中使用它们,这是一种可怕的做法。这会使你的代码难以阅读/维护

此外,如果错误被抑制,则可能看不到错误


也许我需要温习一下我的PHP,但是如果($prev)是真的,它会不会是一个布尔值?它不是一个布尔值,不是吗?它不像获取查询时的一段时间。也许是。

在打开PHP标记后,将以下内容放在脚本的顶部

error_reporting(E_ALL); 
ini_set( 'display_errors','1');

运行它并告诉我们您看到的一切。

请显示来自
wp_comments
的一些示例数据。我建议将查询置于循环之外。来自wp_comments的一些示例数据:Parse error:syntax error,意外的$end in…public_html/test3.php,这可能与在第31行没有左括号和右括号有关否则,正如Leeish所说。放上左括号和右括号,看看解析错误是否消失。你在屏幕上看到了什么输出?如果你看到“它工作”,那么if语句正在查找重复项,但delete查询可能不工作。如果你仍然只看到一个空白屏幕,那么if语句根本找不到重复项,which意味着您需要关注这一点。我很好奇您是否真的将注释行放入$comments中。如果您放入print\r($comments);在第一次数据库查询之后,您应该能够看到$comments数组中的所有注释行。(假设第一次数据库查询正常工作)
error_reporting(E_ALL); 
ini_set( 'display_errors','1');