2017-05-03 13 views
1

私は自分のスクリプトでJoomla PHP APIにアクセスしています。この簡単な登録機能はモバイルアプリケーションから呼び出されています。Joomla PHP APIは、ログのエラーメッセージを取得します

/* Required Files */ 
require_once (JPATH_BASE .DS.'includes'.DS.'defines.php'); 
require_once (JPATH_BASE .DS.'includes'.DS.'framework.php'); 
$app = JFactory::getApplication('site'); 
$app->initialise(); 

require_once(JPATH_BASE.DS.'components'.DS.'com_users'.DS.'models'.DS.'registration.php'); 

$model = new UsersModelRegistration(); 
jimport('joomla.mail.helper'); 
jimport('joomla.user.helper'); 
$language = JFactory::getLanguage(); 
$language->load('com_users', JPATH_SITE); 

$username = JRequest::getVar('username', '', 'method', 'username'); 
$name = JRequest::getVar('name', '', 'method', 'name'); 
$email = JRequest::getVar('email', '', 'method', 'email'); 
$password = JRequest::getVar('password', '', 'method', 'password'); 

$data = array( 
'username' => $username, 
'name' => $name, 
'email1' => $email, 
'password1' => $password, // First password field 
'password2' => $password, // Confirm password field 
'block' => 0); 


if($model->register($data) == "useractivate") { 
    print "Registered"; 
    //log successfull registration data maybe 

} 
else { 
    print "Failed to register"; 
    //DEFINITELY LOG WHY IT FAILED 
} 

else部分では、登録が失敗する可能性がありますが、エラーを発生させる方法はありますか?

$モデルにはこれに関するデータが含まれていますか?

答えて

1

正しく取得していれば、getErrors関数を探しています。

// Get the validation messages. 
$errors = $model->getErrors(); 

// Push up to three validation messages out to the user. 
for ($i = 0, $n = count($errors); $i < $n && $i < 3; $i++) 
{ 
    if ($errors[$i] instanceof Exception) 
    { 
     $app->enqueueMessage($errors[$i]->getMessage(), 'warning'); 
    } 
    else 
    { 
     $app->enqueueMessage($errors[$i], 'warning'); 
    } 
} 
+1

ありがとうございました!これだよ! – Laureant

関連する問題