2017-03-08 90 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集成插件。