數(shù)據(jù)庫操作解決Discuz導入JS不當產(chǎn)生的錯誤
隨著互聯(lián)網(wǎng)技術(shù)的發(fā)展,創(chuàng)建一個獨立站點的門檻越來越低,基本上只要會打字就能做站長了。而這一切的功勞很多一部分就是因為互聯(lián)網(wǎng)中有種種免費開源的程序供廣大草根站長使用,能夠使沒有什么專業(yè)技術(shù)能力的人也可以成為站長。而Discuz作為國內(nèi)知名開源社區(qū)程序,我相信中國的大多數(shù)站長都知道這款程序并也有相當數(shù)量的站長使用過這款產(chǎn)品。
大家都知道,Discuz對于新手站長來說是最容易上手的,而其中一項DIY排版功能就是很多同類程序都無法比擬的,所以很多沒有技術(shù)功底的站長,也可以通過自己拖拽而不寫任何一段代碼去做數(shù)據(jù)調(diào)用模塊。雖然也許做得不是太好看,但至少像個網(wǎng)站;而很多站長朋友就喜歡在網(wǎng)上尋找一些自己認為漂亮的代碼,以為直接diy進去就萬事大吉了,結(jié)果已經(jīng)過保存發(fā)現(xiàn)出大事了,發(fā)現(xiàn)整個頁面都亂了,而且不能進DIY編輯模式去恢復原樣,很多站長曾經(jīng)因此而重新安裝程序。
其實這樣的問題只要懂得基本的技術(shù)就很容易解決,出現(xiàn)問題肯定是我們加進去的代碼跟Discuz自帶的相互沖突。但在前臺我們不能刪除剛剛導入的JS代碼,那么我們就要想到是否能從數(shù)據(jù)庫來操作。下面簡單地說下步驟,其實也是簡單的幾步(本來下面的步驟都可以直接執(zhí)行SQL語句來完成,只是寫給大家不怎么懂技術(shù)的站長,就全部用可視化操作了):
第一,查找官方文檔,查數(shù)據(jù)詞典,確定diy數(shù)據(jù)存儲在哪個表,經(jīng)過查找可以很容易的得知這個表是pre_common_diy_data(其中pre是默認的表前綴)。
第二,用MySQL管理工具打開網(wǎng)站使用的數(shù)據(jù)庫,大家最熟悉的就是Myphpadmin,當然還有其他的工具,比如我本人常用的SQLYOG 。找到上面一步的那個數(shù)據(jù)表打開并切換到瀏覽模式,至于每個字段的意思上面的數(shù)據(jù)詞典已經(jīng)有了。
如果我們需要把某個頁面的DIY數(shù)據(jù)全部刪除,就直接選中一條記錄(通過這個表中的targettplname字段確定哪個記錄是錯誤頁面的DIY數(shù)據(jù))點擊刪除即可,這樣即可恢復;當然如果只需要刪除一部分,那么進去編輯模式即可,不過對于新手而言刪除一頁的DIY的數(shù)據(jù)比你全部重裝來講好多了。
其實很多讓站長感覺很繁瑣的事情利用數(shù)據(jù)庫直接操作就會很簡單,比如我們的域名換了,但網(wǎng)站的內(nèi)容有很多舊域名的內(nèi)鏈,如果一個個去換不得累死,而如果直接去數(shù)據(jù)庫操作就是一條簡單的替換SQL語句而已。包括最新的X3.1版本的QQ互聯(lián)插件問題,其中解決方法之一就是將錯就錯,把數(shù)據(jù)表增加缺少的字段。所以大家還是多多學習了解吧!