我設置了一個Moodle環境,並且我需要用戶能夠通過外部網站使用網站的憑據登錄網站。理想情況下,他們將訪問網站,登錄,然後單擊一個按鈕,將其發送到Moodle及其帳戶信息。通過外部網站登錄到Moodle
一旦他們到達Moodle,Moodle會檢查賬戶信息是否已經存在。如果是這樣,它將登錄,否則它會創建帳戶和登錄。
我已經設置了Moodle環境,以及登錄網站。 Moodle網站不允許訪問登錄網站上的數據庫,用戶不必在任何時候再次輸入他們的信息。
我已經花了好幾個小時試圖從一個插件完成類似Moodle和社交網站(Facebook,Twitter,谷歌+等)之間的東西,但沒有取得進展,以及從一個插件鏈接Moodle和Joomla,我已經在這裏和其他論壇搜索了任何我能找到的東西,類似於我無法完成的事情。任何幫助將非常感激。
編輯:我忘了提,Moodle的版本是2.5.4
編輯:下面創建一個發佈到「登錄/ index.php文件」頁數據的新用戶。目前這是非常不完整的,並且在生產服務器上實施可能很危險。更新的版本將會在我繼續工作時發佈,建議更值得歡迎。
global $CFG, $DB;
require_once($CFG->dirroot.'/user/profile/lib.php');
require_once($CFG->libdir.'/authlib.php');
$newuser = $DB->get_record('user', array('id'=>'1'));
$newuser->auth = 'manual';
$newuser->username = $frm->username;
$newuser->password = hash_internal_user_password($frm->password);
$newuser->username = $DB->insert_record('user', $newuser);
/// Save any custom profile field information
profile_save_data($newuser);
$newuser = $DB->get_record('user', array('id'=>$newuser->username));
events_trigger('user_created', $newuser);
你可以發佈任何示例代碼,結構等到目前爲止? – Lizz
現在我已經清除了標準的Moodle登錄結構。 在登錄網站端,我暫時使用表單並將其發佈到提交的Moodle登錄頁面。最終它會自動從登錄網站的數據庫中提取,但爲了測試,我手動輸入數據。 – chrisc
@Lizz 我已經掌握了我所需要的基本功能。我會更新我的帖子以包含我使用的代碼,這些代碼非常不完整。我想我可以從其他地方找出其他問題,但我會繼續更新這篇文章,以幫助任何可能正在嘗試做我正在做的事情的人。 – chrisc