我正在開發自定義身份驗證插件,用於從第三方API登錄joomla。在Joomla 3.7的jos_user表上添加更多列1.3
當我們使用用戶名/密碼登錄任何Joomla實例時,用戶/密碼傳遞給API獲取正確的響應(如login_id,username,employee_ident,email,通用名稱)。然後Joomla在Joomla上創建用戶,保存在Joomla數據庫上的回覆,如(用戶名,全名,電子郵件)。現在ccms auth插件工作正常。
我的要求是在API中使用用戶身份驗證插件時,在jos_users上另存一列。爲此,我在jos_user表中創建了一列employee_ident,但無法將joomla db中的employee_ident保存在jos_user表中。
這裏是我的代碼:
$result = $client->call($method, $params);
[0] => Array
(
[login_id] => Frasier.9878
[email_address] => [email protected]
[position_code_type_ident] => 157
[employee_ident] => 166651
[position_code_department_abbr_name] => executive_management
[position_code_title] => Chief Financial Officer
[hire_date] => 2003-01-20
[common_name] => Frasier Crane
)
if($result)
{
$email_address = isset($result[0][email_address]) ? $result[0][email_address] : $credentials['username']."@test.com";
$response->email = $email_address;
$response->fullname =$result[0][common_name];
$response->employee_ident =$result[0][employee_ident];
$response->username =$credentials['username'];
$response->status = JAuthentication::STATUS_SUCCESS;
$response->error_message = '';
}
你似乎有print_r的的''在你的代碼中()的輸出。那將無法運行,你會將它編輯爲你實際擁有的嗎? – halfer