数据库操作解决Discuz导入JS不当产生的错误
2022-2-21  高端网站定制

随着互联网技术的发展,创建一个独立站点的门槛越来越低,基本上只要会打字就能做站长了。而这一切的功劳很多一部分就是因为互联网中有种种免费开源的程序供广大草根站长使用,能够使没有什么专业技术能力的人也可以成为站长。而Discuz作为国内知名开源社区程序,我相信中国的大多数站长都知道这款程序并也有相当数量的站长使用过这款产品。

大家都知道,Discuz对于新手站长来说是最容易上手的,而其中一项DIY排版功能就是很多同类程序都无法比拟的,所以很多没有技术功底的站长,也可以通过自己拖拽而不写任何一段代码去做数据调用模块。虽然也许做得不是太好看,但至少像个网站;而很多站长朋友就喜欢在网上寻找一些自己认为漂亮的代码,以为直接diy进去就万事大吉了,结果已经过保存发现出大事了,发现整个页面都乱了,而且不能进DIY编辑模式去恢复原样,很多站长曾经因此而重新安装程序。

其实这样的问题只要懂得基本的技术就很容易解决,出现问题肯定是我们加进去的代码跟Discuz自带的相互冲突。但在前台我们不能删除刚刚导入的JS代码,那么我们就要想到是否能从数据库来操作。下面简单地说下步骤,其实也是简单的几步(本来下面的步骤都可以直接执行SQL语句来完成,只是写给大家不怎么懂技术的站长,就全部用可视化操作了):

第一,查找官方文档,查数据词典,确定diy数据存储在哪个表,经过查找可以很容易的得知这个表是pre_common_diy_data(其中pre是默认的表前缀)。

第二,用MySQL管理工具打开网站使用的数据库,大家最熟悉的就是Myphpadmin,当然还有其他的工具,比如我本人常用的SQLYOG 。找到上面一步的那个数据表打开并切换到浏览模式,至于每个字段的意思上面的数据词典已经有了。

如果我们需要把某个页面的DIY数据全部删除,就直接选中一条记录(通过这个表中的targettplname字段确定哪个记录是错误页面的DIY数据)点击删除即可,这样即可恢复;当然如果只需要删除一部分,那么进去编辑模式即可,不过对于新手而言删除一页的DIY的数据比你全部重装来讲好多了。

其实很多让站长感觉很繁琐的事情利用数据库直接操作就会很简单,比如我们的域名换了,但网站的内容有很多旧域名的内链,如果一个个去换不得累死,而如果直接去数据库操作就是一条简单的替换SQL语句而已。包括最新的X3.1版本的QQ互联插件问题,其中解决方法之一就是将错就错,把数据表增加缺少的字段。所以大家还是多多学习了解吧!