2013-08-01 190 views
0

我目前正在開發一個Joomla組件,並且我完全被困住了。我想向Joomla 2.5中添加一些用戶,理論上我知道該怎麼做,但它不起作用。更具體:密碼的創建不能按預期工作...用php組件創建Joomla 2.5用戶

我用下面的代碼來創建用戶的密碼:

jimport('joomla.user.helper'); 

foreach($users as $user) 
{ 
    $salt = JUserHelper::genRandomPassword(32); 
    $crypt = JUserHelper::getCryptedPassword('foo', $salt); 
    $password = $crypt.":".$salt; 
} 

如果我嘗試默認視圖裏面的代碼它的作品應該是default.php。但是,如果使用的控制器內相同的代碼它會引發內部服務器錯誤500

我不明白爲什麼這並不控制器的內部工作...

別人是否知道答案?

最大

編輯:這似乎是一些有關foreach循環...代碼工作無處不在的控制器除了環

+0

用戶是一組用戶對象嗎? – Elin

回答

0

裏面我覺得好辦法是觀察組件com_adduserfrontend,更多詳細請遵守文件:組件/ com_adduserfrontend /視圖/ adduserfrontend/TMPL /如default.php

組件這樣設置密碼:

jimport('joomla.user.helper'); 

$createpassword = createRandomPassword(); 

$password = getCryptedPassword($createpassword, $salt= '', $encryption= 'md5-hex', $show_encrypt=false); 

$showpass = $createpassword; 

希望這有助於!

+0

感謝您的回答!它幫助我走上了正確的軌道。這看起來好像Joomlas RandomPassword方法存在問題。由於adduserfrontend中的這一點,他們開發了自己的隨機密碼生成器來規避它,我也這樣做了。知道一切正常:) – Max