2017-03-08 94 views
0

在我們的系統中,我們想要將moodle插件(版本3.1)與成員集成在一起。我們有一些用戶使用加密格式的密碼在moodle中,我們希望將這些用戶導入到成員中,而無需更改用戶密碼API。moodle版本3.1與成員集成

任何人都可以請建議一種方式,我們該如何處理?

我使用以下代碼在amember.it中成功創建用戶,但是當我嘗試登錄時,它被拒絕。

$url = 'http://YOURDOMAIN.COM/amember/api/users'; 

$fields = array(
'_key' => 'SECRETKEY', 
'_format' => 'xml', 
'login' => 'USERNAME', 
'pass' => 'PASSWORD', 
'email' => 'EMAIL', 
'name_f' => 'FIRST NAME', 
'name_l' => 'LAST NAME', 
); 
//open connection 
$ch = curl_init(); 

//set the url, number of POST vars, POST data 
curl_setopt($ch, CURLOPT_URL, $url); 
curl_setopt($ch, CURLOPT_POST, true); 
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($fields)); 
curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-type: application/x- www-form-urlencoded")); 

//execute post 
$result = curl_exec($ch); 

//close connection 
curl_close($ch); 

在此先感謝。

回答

0

由於moodle中的密碼是加密的,因此您將無法解密密碼。在我讀取你的代碼時,amember api在創建用戶時需要一個簡單的密碼。

我看到的唯一解決方法是導致在moodle中擁有自己的認證插件。一旦現有的moodle用戶嘗試登錄,該插件將被調用。然後您可以使用user_login方法來驗證針對moodle數據庫的密碼。此外,在此階段,您擁有明文密碼,因此您可以在登錄成功後創建新的成員用戶。

0

您不需要使用API​​來導入用戶。

aMember有一個管理工具,允許您從CSV文件導入用戶。 此工具允許您使用加密/散列密碼導入用戶。

aMember CP - >用戶 - >導入用戶

您可以從您的Moodle數據庫CSV文件導出用戶。

在進行此類導入之前,您需要在會員中啓用moodle集成插件。