2014-05-15 175 views
1

我正在使用drupal 7.27版本其中我需要連接到moodle站點及其數據庫。所以我用drupal模塊moodle_connection將它與moodle站點連接起來。因爲它不提供任何結束功能。我安裝了另一個名爲moodle_views的模塊,但不幸的是沒有從moodle收到數據。當我調試時,我發現兩個站點之間沒有建立連接。將drupal站點連接到moodle站點

我在自定義模塊中調用了moodle_connector_connect()函數來連接到Moodle。但沒有成功。在moodle連接器設置中,我輸入以下信息:

Database Type : mysql 

Database Server : localhost 

Database TCP Port : 3306 

Database Name : drupal_moodle ('Name of the moodle database') 

Database Prefix : mdl_ 

Database User : root 

Database Password : (I don't have password for my database user so I kept blank) 

Moodle URL : drupal_moodle (Moodle site url) 

請幫我解決這個問題。

問候

NEHA

回答

0

閱讀過的Drupal的模塊moodle_connector bug報告,我注意到了有關的Moodle的數據庫連接變量的值來一些問題,並與處理錯誤條件的一些問題。

將此與您提到的空密碼結合使用,建議下列行可能是一個問題。

閱讀moodle_connector.module,在第51行我注意到一些惰性檢查未設置的參數。

// Return false if settings are incomplete. 
if (!$type || !$server || !$port || !$username || !$password || !$database) { 
    return FALSE; 
} 

它看起來像支票!$密碼會導致功能moodle_connector_connect()退出,而不是連接到Moodle的數據庫,如果任何值沒有設置或設置爲空。

作爲一種解決方法,以及在安全方面正確的方向邁出的一步,您可以創建一個新的MySQL用戶,特別授予它必要的權限以允許Drupal讀取Moodle DB並設置密碼。

我還強烈建議您閱讀本手冊的MySQL'post installation'部分,該部分建議在root用戶帳戶上設置密碼。在初始安裝期間沒有root密碼很方便,但是存在安全問題。機器上的任何普通用戶或可連接到端口3306的附近機器都可以獲得對數據庫的完全訪問權限。

http://dev.mysql.com/doc/refman/5.1/en/postinstallation.html