如何讓Oblog整合SiteFactory支持中文用戶名_動易Cms教程

      編輯Tag賺U幣
      教程Tag:暫無Tag,歡迎添加,賺取U幣!

      在整合SiteFactory 和 Oblog 的時候,發現由于兩者所采用的加密方式不一至,導致注冊中文用戶名時出現如下錯誤:
      oblog46(1):安全碼驗證未通過!
      請仔細閱讀論壇幫助文件,確保您有相應的操作權限。

      為了讓支持中文,我們只有修改Oblog的加密方式,讓Oblog采有新的md5加密方式
      (注意:對于存在中文密碼的用戶,可能出現密碼不正確)

      我們直接使用 動網的inc/md5.asp 來修改,先復制動網文件:inc/md5.asp


      1.將下面 //第7行

      Private m_l2Power(30)
      Dim Md5OLD
      改為:

      Private m_l2Power(30)
      Dim iLength '增加部份
      Dim Md5OLD

       

      2.將下面 //第 198行

      Public Function MD5(sMessage,stype)
      m_lOnBits(0) = CLng(1)

      改為:

      Public Function MD5(sMessage)
      Md5OLD=0
      m_lOnBits(0) = CLng(1)

       

      3.將下面 //382行

      if stype=32 then
      MD5 = LCase(WordToHex(a) & WordToHex(b) & WordToHex(c) & WordToHex(d))
      else
      MD5=LCase(WordToHex(b) & WordToHex(c))
      end if

      改為:

      If iLength = 32 Then
      MD5 = LCase(WordToHex(a) & WordToHex(b) & WordToHex(c) & WordToHex(d))
      Else
      MD5 = LCase(WordToHex(b) & WordToHex(c))
      End If

      然后把這個文保存后復蓋Oblog inc 下的 md5.asp ,其他修改按照整合教程修改。

      二、完成上面修改之后,可以實現中文注冊,但是登錄時可能出現如下問題:

      中文用戶名在SiteFactory登錄成功,在oblog能同步登錄。而在Oblog登錄成功,在SiteFactory卻不能同步登陸。

       

      出現這樣的情況主要是中文在url的編碼問題。接下來我們還要修改Oblog的登錄文件,在Oblog的文件夾下找到Login.asp:

      將下面//159行

            turl=strUrl&"?syskey="&MD5(UserName&oblog_Key)&"&username="&UserName&"&password="&PassWord&"&savecookie="&CookieDate & "@@@"& turl  '修改部份

      改為

            turl=strUrl&"?syskey="&MD5(UserName&oblog_Key)&"&username="&Server.urlencode(UserName)&"&password="&PassWord&"&savecookie="&CookieDate & "@@@"& turl  '修改部份

       

      保存文件即可。

      查看更多 動易Cms教程  動易Cms模板

      來源:模板無憂//所屬分類:動易Cms教程/更新時間:2009-10-04
      相關動易Cms教程