我正在尝试通过带有自定义字段的网络服务在 moodle 中添加一个新用户



>我正在尝试通过网络服务在moodle中创建用户。已成功创建用户,但未填充自定义字段。任何人都可以将我重定向到解决方案吗?在自定义字段中,我正在尝试将性别值发送为男性。

       $functionName = 'core_user_create_users';
            $user1 = new stdClass();
            $user1->username = $form_state['values']['UserName']; 
            $user1->password=$form_state['values']['PassWord']; 
            $user1->firstname = $form_state['values']['FirstName']; 
            $user1->lastname = $form_state['values']['LastName']; 
            $user1->email = $form_state['values']['Emailid']; 
            $user1->mailformat = '0';
            $preferencename1 = 'auth_forcepasswordchange';
            $user1->preferences = array(
                array('type' => $preferencename1, 'value' => 'true')
               );
              $user1->customfields = array(
                array('type' => 'Gender', 'value' => 'Male')
               );
            $users = array($user1);
            $params = array('users' => $users);
            /// REST CALL
    $rest_format = 'json';
        //$server_url = $domain_name . '/webservice/rest/server.php' . '?wstoken=' . $token . '&wsfunction=' . $function_name;
        $server_url = 'localhost/moodle' . '/webservice/rest/server.php'. '?wstoken=' . '7525ce057d455657a4e83d7aa63f3684' .'&wsfunction='. $functionName;
        require_once('curl.inc');
        $curl = new curl;
        $rest_format = ($rest_format == 'json') ? '&moodlewsrestformat=' . $rest_format : '';
        $resp =$curl->post($server_url.$rest_format , $params);
        dpm($resp);
        $res=json_decode($resp);
        dpm($res);
$preferencename1 = 'auth_forcepasswordchange';
$user1->preferences = array(
     array('type' => $preferencename1, 'value' => 'true')
);

它有效吗?我正在尝试,但显示无效参数错误。

我明白了。我做错的只是性别的第一个字母应该是小写的。它应该是gender而不是Gender.

最新更新