主題: 升級到1.1.2後如果出現無法登入的解決方法 作者: james 於 十二月 01, 2006, 01:47:05 下午 這篇文章只適用在當你把系統更新到1.1.2後, 在登入時出現使用者帳號和密碼錯誤而無法登入時!
你才必需做以下的修改. 如果你是1.1以後全新安裝的使用者,那麼你可以略過這篇文章. :-) 修改的地方在 安裝目錄下的/class/dao/userdata/lifetypeuserdataprovider.class.php 在第73行找到 程式碼: if( $user->getUsername() != $username ) { 程式碼: if( strtolower($user->getUsername()) != $username ) { 原因是因為在1.1.x以後帳號只能以小寫的英文和數字存在(因為帳號要支援 domain name的關係 ) 所以如果你是像我一樣從0.32一路升級上來的使用者,那麼就非常可能會遇到這樣的問題. 如果使用者的帳號在註冊時包含大寫字母,在1.1.2登入時會把輸入的帳號全部轉換成小寫字母. 這樣在比對時就會發生錯誤 因此上面的修改,就是把從資料庫中取出的帳號也轉換成小寫字母.來通過比對的過程.讓使用者可以順利登入. 感謝mark提供的協助 :-) 同時也發現在tmp下的log檔在找出問題發生的原因時真的是非常有用的工具. 因此也請大家在發問問題時,盡量同時提供tmp下的log檔內容. 那對問題的解決真的是有非常大的幫助阿 Orz. James. |