سؤال

أقوم بتطبيق وحدة المصادقة في Kohana، ولا يمكنني معرفة مصدر رسالة الخطأ هذه - يحدث عند تقديم نموذج تسجيل يقوم بإنشاء مستخدم في قاعدة البيانات (التي تقوم بنجاح بها).

تم اكتشاف خطأ وهو منع تحميل هذه الصفحة. إذا استمرت هذه المشكلة، فيرجى الاتصال بمسؤول موقع الويب.

تطبيق / وحدات تحكم / record.php [83]:

العقار غير محدد: register_controller :: $ Auth

أنا أستخدم jQuery للتحقق من صحة النموذج، وعمل النموذج تماما قبل أن أضيف جيس، لذلك قد تضطر المشكلة مع طلبات AJAX، لكنني لست متأكدا من أين أذهب من هناك ...

إليك تتبع المكدس:

   *

     Register_Controller->create_user(  )

   * system/core/Kohana.php [291]:

     ReflectionMethod->invokeArgs( Register_Controller Object
     (
         [template] => View Object
             (
                 [kohana_filename:protected] => /var/www/ko/testsite/system/views/form/template.php
                 [kohana_filetype:protected] => .php
                 [kohana_local_data:protected] => Array
                     (
                     )

             )

         [auto_render] => 1
         [uri] => URI Object
             (
             )

         [input] => Input Object
             (
                 [use_xss_clean:protected] => 1
                 [magic_quotes_gpc:protected] => 1
                 [ip_address] => 
             )

     )
      )

   *

     Kohana::instance(  )

   * system/core/Event.php [209]:

     call_user_func( Array
     (
         [0] => Kohana
         [1] => instance
     )
      )

   * system/core/Bootstrap.php [55]:

     Event::run( system.execute )

   * index.php [106]:

     require( system/core/Bootstrap.php )

وهنا طريقة Create_User () في Register_Controller:

public function create_user()
{
   if($_POST)
   {
      $post = $this->input->post();
      $user = ORM::factory('user');

      $user->add(ORM::factory('role', 'login'));

     if($user->validate($post, TRUE))
      {
         $this->auth->login($user, $post->password);
         url::redirect();
      }
      else
      {
         url::redirect('register');
      }
   }
}

هل لديكم أي اقتراحات؟ : P.

هل كانت مفيدة؟

المحلول

الخطأ الذي تحصل عليه هو لأن المتغير $ هذا-> مصدق غير موجود في وحدة التحكم الخاصة بك

أنا أظن أنك تهدف إلى القيام به $this->auth = Auth::instance(); في المنشئ.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top