利用SQL语句批量删除论坛中带随机字符的植入广告的方法
本人运营一个论坛,某段时间,由于一个论坛版主的密码被盗,导致被注册机利用版主的编辑帖子权限,批量在主题和回复中植入下面的代码:
可问题在于,植入的广告代码有随机字符夹在其中,如:
可以看到每一条内容都不完全一样。
这使得简单使用如下sql语句的Replace命令无法批量删除。
UPDATE pre_forum_post SET message=REPLACE(message,'欲替换的字符','替换为字符');
经过万能的百度,最后成功解决:
UPDATE pre_forum_post
SET message = REPLACE (
message,
substring(
message,
locate('[b][url] [img]', message),
locate('百分百即时到账SO.CC[/color][/size] [/url][/b]',
message) + 44 - locate('[b][url] [img]', message)
),
''
)
—————————————————————————————————————————————————————
本人使用phpmyadmin运行的SQL语句,顺利完成。DZ后台行不行,没有亲测。
—————————————————————————————————————————————————————