Posts Categorizados ‘codeigniter

31
Ago
09

Codeigniter – Série de tutoriais – Biblioteca AUTH

Olá cambada. Continuando nosssa série, agora com um post curtinho, mas muito útil. Vamos falar de uma biblioteca bem simples que desenvolvi para me auxiliar na captura de informações do usuário logado. Nós utilizamos a mesma nos posts passados, e eu recebi algumas sugestões através da lista do Codeigniter no Brasil, para que eu explica-se mais a bilioteca.

AUTH

O nome eu dei para ficar referente a autenticação, como muitos devem perceber. A biblioteca possui as seguintes funcionalidades, que eu prefiro chamar de FACILIDADES ;) .

  • Checar se o usuário está logado. Método: check_logged()
  • Trazer informações do usuário logado. Método: authInfo()

Mas não se resume a isso, pois os parâmetros passados nos métodos, podem facilitar ainda mais. Vamos destrinchá-los.

check_logged($return = ”,$controller = ‘login’)

- Podemos observar que a função possui um parâmetro a ser passado opcionalmente. Este parâmetro é responsável pelo tipo de retorno que a função nos dará.
Se nenhum parâmetro for passado a função check_logged(), então a biblioteca fará a verificação seguinte:

Usuário Logado? Retorno: TRUE
Usuário não Logado? Página recarregada para o controller escolhido como segundo parâmetro.

Se o parâmetro for passado como TRUE, teremos:

Usuário Logado? Retorno: TRUE
Usuário não Logado? Retorno: FALSE

Se você pensar um pouco, verá que isso tem uma utilidade gigante, quando você quer por exemplo, restringir acesso a certos controllers da sua aplicação, verificando se o usuário está logado ou não, apenas passando a seguinte linha no construtor:

$this->auth->check_logged(); // A biblioteca se encarrega de tirar o usuário do controller e protege o acesso.

authInfo()

- Nesta função, nós podemos trazer as informações do usuário autenticado no sistema. Caso o mesmo não esteja logado, a função retornará false. Vemos uma das utilidades para esta função, no caso de obter informações para mostrar “bem-vindos”, “tempo de login”, etc.

Código

Agora que já descrevi as funcionalidade/facilidades da biblioteca, vou postar o seu código abaixo:

if ( ! defined('BASEPATH')) exit('No direct script access allowed');
/**
 * CodeIgniter
 *
 * An open source application development framework for PHP 4.3.2 or newer
 *
 * @package		CodeIgniter
 * @author		ExpressionEngine Dev Team
 * @copyright	Copyright (c) 2008, EllisLab, Inc.
 * @license		http://codeigniter.com/user_guide/license.html
 * @link		http://codeigniter.com
 * @since		Version 1.0
 * @filesource
 */

// ------------------------------------------------------------------------

/**
 * Auth Class
 *
 *
 *
 * @package		CodeIgniter
 * @subpackage	Libraries
 * @category	Login
 * @author		Djalma Araújo de Andrade
 * @link		http://web.djalmaaraujo.com.br/projects/codeigniter/lib/auth.txt
 */
class auth
{
    private $ci;
    private $user_login;

    function __construct()
    {
        $this->ci = &get_instance();
    }

    function check_logged($return = '', $controller = 'login')
    {

        $this->user_login = $this->ci->session->userdata('user_logged');

        if ($this->user_login['logged'] == 1) {
            return true;
        } else {
            if ((!empty($return)) && ($return == true)) {
                return false;
            } else {
                redirect('/' . $controller . '/', 'refresh');
            }
        }
    } //End logged

	function authInfo()
    {
        $this->user_login = $this->ci->session->userdata('user_logged');

        if ($this->user_login['logged'] == true) {
            return $this->user_login;
        } else {
            return false;
        }
    }
}

Bom, é isso, se você quiser aliar esta biblioteca com suas aplicações, ficarei feliz, mas o importante é estar passando o conhecimento de criar novas funcionalidades no codeigniter.

Por hoje é só.
That’s all Folks.

Djalma Araújo

27
Ago
09

Codeigniter – Série de tutoriais – Introdução

Olá pessoal, minha meta de 2009 número 2 não vem sendo cumprida de maneira alguma. “Pelo menos um post por mês”. É, prometer e não cumprir é errado. Mas, a partir de hoje, estarei iniciando uma série de tutoriais/dicas/rotinas/qualquer coisa que tenha relação com o  CodeIgniter.

Vou falar um pouco sobre o CodeIgniter neste primeiro post, para que todos tenham uma boa noção de como utilizá-lo, onde achá-lo e por que utilizá-lo. Antes disso, precisamos dar uma revisada no conceito de um framework. Não vou entrar em conceitos de MVC ou como funciona um framework, pois você pode encontrar estes conceitos em vários sites, como aqui, aqui e aqui.

Framework

Resumidamente falando, um framework é um pacote de coisas. Simples? É exatamente isto. Seguindo alguns padrões, um framework traz uma série de ferramentas, auxiliadores e ainda alguns geradores de funcionalidades. A utilização de um tipo de ferramenta como esta, pode agilizar o desenvolvimento de projetos em dias e por que não meses.

A primeira impressão de um programador que não utiliza nenhum framework pode ser de renúncia, porém, ao se deparar com a facilidade e as várias funcionalidades que um framework pode trazer, logo vira hábito a utilização do mesmo.

Imagine que você estaria construindo um préio de 3 andares, e no começo de tudo você já poderia ter pronto o cimento, as ferramentas e a estrutura toda pronta no papel e virtual. Agora você só precisaria se importar com o que realmente importa, que é subir os andares de tijolos utilizando o cimento e as ferramentas.

Da mesma forma acontece quando se utiliza um framework para a construção de um sistema para web. Você já possui um padrão de estrutura, já possui todas as ferramentas para manipular XML, Web Services, Banco de dados e preocupa-se apenas com a regra de negócio na hora de desenvolver as linhas de código.

O Codeigniter

Bom, já entendemos o que é um framework, agora podemos falar do propriamente dito “suprassumo do rabo do pato”, vulgo Codeigniter framework, ágil, prático e robusto.

Como já dizia o pessoal do Codeigniter Brasil no seu belo post CodeIgniter: framework PHP ágil, robusto e de alta performance:

“CodeIgniter, como bom framework que é, permite o desenvolvimento de web sites, softwares e aplicações em PHP de maneira ágil e relativamente descomplicada. O objetivo do CodeIgniter é disponibilizar um framework de máxima performance e capacidade, que seja flexível e o mais leve possível.”

Por ser um framework muito flexível quanto a sua estrutura, ele abre um leque de possibilidades bem maior do que outros para o desenvolvimento de aplicações para web.

Atualmente, estou desenvolvendo um CMS baseado no próprio codeigniter, e realmente, a maneira como é fácil manipular elementos de XML, Banco de dados e afins, é muito interessante.

Bom, para saber mais sobre o codeigniter, é bom visitar o site oficial e os blogs fáceis de encontrar no segundo cérebro.

That’s all folks.

Por hoje é somente só isso mesmo nada mais do que eu falei até agora pois é somente isso e tenho dito. Entendeu?! Darei continuidade na segunda parte da série com um post falando sobre como fazer uma autenticação com o codeigniter. Tutorial simples de Login. A intenção deste primeiro tutorial é mostrar no segundo uma biblitoca que desenvolvi de auxílio na captura e verificação de informações dos usuários logados no seu sisteminha.

É isso, até o próximo post.

Djalma Araújo




Twitter

Assinem meu feed

Assine também via e-mail

del.icio.us

My Flickr

Espaço relax

Coisas.

stuart little.

More Photos

Navegue