Премини към съдържанието
Форумът в приложение

По-лесно сърфиране. Научи повече.

Kaldata.com - Форуми

Приложение на форума на цял екран с push известия, значки и други.

За да инсталирате това приложение на iOS и iPadOS
  1. Докоснете Иконата за споделяне в Safari
  2. Превъртете менюто и докоснете Добавяне към началния екран.
  3. Докоснете Добавяне в горния десен ъгъл.
За да инсталирате това приложение на Android
  1. Докоснете менюто с 3 точки (⋮) в горния десен ъгъл на браузъра.
  2. Докоснете Добавяне към началния екран или Инсталиране на приложение.
  3. Потвърдете, като докоснете Инсталиране.

Добре дошли!

Добре дошли в нашите форуми, пълни с полезна информация. Имате проблем с компютъра или телефона си? Публикувайте нова тема и ще намерите решение на всичките си проблеми. Общувайте свободно и открийте безброй нови приятели.

Моля, регистрирайте се за да публикувате тема и да получите пълен достъп до всички функции.

 

Проблем с Аутологина на Кохана

Featured Replies

Здравейте, от скоро използвам Кохана 3.3.1 и се опитвам да използвам  метода за аутологин, но:

$auth = Auth::instance()->login($user_profile['email'],sha1($user_profile['id']), TRUE);

ми връща false всеки път, при съществуващ юзър в базата и валидна сесия.

На какво може да се дължи? Благодаря предварително.

Имам го като модул и config-a ми е:

<?php defined('SYSPATH') or die('No direct access allowed.');

return array(

    'driver'        => 'ORM',
    'hash_method'   => 'SHA1',
    'salt_pattern'  => '1, 3, 5, 9, 14, 15, 20, 21, 28, 30',
    'hash_key'      => 'mykey',
    'lifetime'      => 1209600,
    'session_key'   => 'auth_user',
    'autologin_key' => 'auth_autologin',
    'forced_key'    => 'auth_forced',
    'session_type' => Session::$default,


    // Username/password combinations for the Auth File driver
    'users' => array(
        
    ),

);

Кодът ми е:

public function action_fbLogin(){
      
        $facebook = new Facebook(array(
            'appId'  => 'appid',
            'secret' => 'Secret',
        ));

        $user = $facebook->getUser();
        if ($user) {

            $user_profile = $facebook->api('/me', array('fields' => 'id,email,name,first_name,last_name,picture')); 
            $user_id = Model_UserFunctions::checkIfUserExist($user_profile['email']); 
            $fb_id = Model_UserFunctions::checkIfFbUserExist($user_profile['email']);
            if($user_id > 0 && $fb_id >0)
            {
                
                Session::instance()->set('user', array(
                    'fb_id' => $user_profile['id'],
                    'user_id' => $user_id,
                    'pic' => $user_profile['picture'],
                    'email' => $user_profile['email'],
                    'first_name' =>  $user_profile['first_name'],
                    'last_name' =>  $user_profile['last_name'],

                ));


                $auth = Auth::instance()->login($user_profile['email'],sha1($user_profile['id']), TRUE); 
                //var_dump($auth);
                $this->redirect('profile');
                exit;
            } 
            $values = array(
                    'email' => $user_profile['email'],
                    'username' => $user_profile['email'],
                    'password' => sha1($user_profile['id']),
                    'fb_id' => $user_profile['id']
                );
            $user = ORM::factory ( 'User' );
            $user->values($values);
            
            
            try
            {

                if($user->save()){
                    $user_new_id = $user->as_array();
                    $user_new_id = $user_new_id['id'];
                    Session::instance()->set('user', array(
                            'fb_id' => $user_profile['id'],
                            'user_id' => $user_new_id,
                            'pic' => $user_profile['picture'],
                            'email' => $user_profile['email'], 
                            'first_name' => $user_profile['first_name'],
                            'last_name' => $user_profile['last_name'],
                        ));
                      $user->add('roles', ORM::factory('Role')->where('name', '=', 'login')->find());

                    $this->redirect('profile');
                }


            }
            catch (ORM_Validation_Exception $e)
            {
                $result = $e->errors('models');
                echo '<pre>';
                print_r($result);
                exit;
            }


        }
        else 
        {
            
            $this->redirect($facebook->getLoginUrl(array('id,email,name,first_name,last_name,picture'))); 
        }
        exit;
    
    }

 

 

  • 2 седмици по-късно...

Здравей... някъде ти се бъгясва цялата връзка или става нещо при самите сесии и проверки. Виж си кода и махни коментара на var_dump($auth); и виж какво ще ти дъмп-и на екрана.

$auth = Auth::instance()->login($user_profile['email'],sha1($user_profile['id']), TRUE); 
                //var_dump($auth);

Архивирана тема

Темата е твърде стара и е архивирана. Не можете да добавяте нови отговори в нея, но винаги можете да публикувате нова тема, в която да продължи дискусията. Регистрирайте се или влезте във вашия профил за да публикувате нова тема.

Разглеждащи това в момента 0

  • Няма регистрирани потребители разглеждащи тази страница.

Дарение

  • Подкрепи съществуването на форума - направи дарение
    25%
    Дарени 252.69 EUR от нужните 1,000.00 EUR

Бюлетин

Получавайте известие, когато има важна промяна или новина свързана с форума.

Профил

Навигация

Търсене

Търсене

Конфигуриране на push известия в браузъра

Chrome (Android)
  1. Докоснете иконата на катинар до адресната лента.
  2. Докоснете Разрешения → Известия.
  3. Променете предпочитанията си.
Chrome (Desktop)
  1. Кликнете върху иконата на катинар в адресната лента.
  2. Изберете Настройки на сайта.
  3. Намерете Известия и коригирайте предпочитанията си.