Vous êtes sur la page 1sur 8

http://www.multside.com.

br

CODE IGNITER
INSTALAO & BANCO DE DADOS

http://www.multside.com.br

INSTALAO
Instalar o code-igniter muito simples, basta que voc tenha um servidor que rode PHP 5 (para saber consulte a documentao PHP do seu servidor). Aps ter certeza que o seu servidor compatvel com PHP5, siga as etapas:

DOWNLOAD
Faa o Download da http://codeigniter.com/ verso mais recente do code-igniter no site:

UPLOAD
Envie os arquivos que voc baixou para o seu servidor.

CONFIGURAO
Abra o arquivo config.php que est em system\application\config\ com o editor PHP de sua preferncia, localize:
$config['base_url'] = "http://your-site.com/";

E substitua por:
$config['base_url'] = "http://".$_SERVER['HTTP_HOST'];

E, caso o seu site no esteja na pasta raiz (pasta principal do servidor), adicione antes dos ;."/nome_da_pasta_em_que_ele_est/".

Por aqui j acabamos, vamos agora para o prximo tpico, usando code-igniter com Banco de Dados.

http://www.multside.com.br

BANCO DE DADOS
Vamos aprender a configurar o code-idniter para us-lo com banco de dados, ele j vem pr configurado, porm, so precisos alguns ajustes de acordo com seu banco de dados. O que vamos precisar aqui so o nome, servidor, usurio e senha do seu banco de dados. Tendo essas informaes, vamos a configuraes, o arquivo de configuraes do banco de dados est tambm na pasta system\application\config\, v na pasta e abra o arquivo database.php com o editor de sua preferncia, altere os seguintes locais de acordo com as informaes do seu banco de dados:
$db['default']['hostname'] $db['default']['username'] $db['default']['password'] $db['default']['database'] = = = = "seu servidor"; //normalmente "localhost" "seu usurio"; "sua senha"; "o nome do banco de dados";

Para usar banco de dados em alguma pgina preciso colocar isso no incio, dentro de tags php (<?php ?>).
$this->load->database();

Ou simplesmente alterar o arquivo autoload.php, que tambm fica em system\application\config\, abra o arquivo e altere o seguinte local: Onde est:
$autoload['libraries'] = array();

Altere para
$autoload['libraries'] = array('database');

Com isso, ele ser iniciado automaticamente, sem a preciso de colocar o load>database();. Vamos agora, aprender a como usar ele, quando j iniciado.

http://www.multside.com.br

WHERE
O where uma condio, palavra inglesa que tem como significado onde, a forma de execut-lo :
$this->db->where('campo1', '1');

O modo de ler o seguinte: Onde campo1 for igual a 1, ou seja sempre que um where igual a esse for executado, ele vai fazer a operao (seja ela qual for) nas linhas onde campo1 tiver como valor o nmero 1.

SELECT
Sempre que formos usar banco de dados devemos usar assim:
$this->db->comando a executar

No caso de select (selecionar campos do banco de dados) devemos usar o seguinte:


$this->db->select('campo1', 'campo2');

Nesse caso estamos buscando campo1 e campo2, podemos ento usar um where para filtrar isso:
$this->db->where('campo1', '1'); $this->db->select('campo1', 'campo2');

Ou seja, ele vai buscar campo1 e campo2 onde o campo1 for igual a 1. Tambm preciso dizer a ele onde buscar, em qual tabela, da seguinte forma:
$this->db->from('tabela_do_bd');

Somente isso no suficiente para exprimir os dados na pgina, para isso temos que gerar os resultados, existem dois meios para isso, e ambos usam:
$this->db->get();

O get executa as informaes pedidas por select, para pegar os resultados, colocamos ele em uma varivel:

http://www.multside.com.br
$var = $this->db->get();

E depois partimos para um dos mtodos: 1 - Com foreach Nesse mtodo vamos usar um foreach para gerar os resultados, da seguinte maneira:
$this->db->select('campo1','campo2'); $this->db->where('campo1', 'um'); $this->db->from('tabela_do_db'); $var = $this->db->get();

dizendo que os resultados sero exprimidos apartir da varivel $row


foreach($var->result() as $row):

aqui tambm defini variveis para os campos que foram puxados da tabela
$campo1 = $row->campo1; $campo2 = $row->campo2; endforeach;

1 - Sem foreach Nesse mtodo no iremos usar foreach, vamos fazer de um mtodo direto:
$this->db->select('campo1','campo2'); $this->db->where('campo1', 'um'); $this->db->from('tabela_do_db'); $var = $this->db->get(); $row = $var->row(); $campo1 = $row->campo1; $campo2 = $row->campo2;

Esses so os dois mtodos. Ao ver esses dois cdigos vocs devem estar se perguntando: Por que usar o foreach? J que o outro bem mais simples. Realmente, sem foreach bem mais simples, porm, dessa maneira s possvel buscar a primeira linha que ele encontra no banco de dados com aquela condio, ou seja, s uma linha, s 1 resultado. Com foreach voc busca todas as quais ele encontrar com aquela condio, usando o seguinte:
foreach($var->result() as $row): $campo1 .= $row->campo1; $campo2 .= $row->campo2;

http://www.multside.com.br
endforeach;

Usando .=, com isso, a cada campo que ele encontrar ele vai aicion-lo aquelas variveis. Outra utilidade para o this->db->get() Com ele tambm possvel verificar se existem dados com aquela condio, e at mandar uma mensagem de erro caso no haja, para isso usamos:
$variavel->num_rows();

Vamos aplic-lo no exemplo acima:


$this->db->select('campo1','campo2'); $this->db->where('campo1', 'um'); $this->db->from('tabela_do_db'); $var = $this->db->get();

se o numero de linhas que ele encontrar forem mais que 0


if($var->num_rows() > 0): gerar os resultados normalmente. foreach($var->result() as $row): $campo1 = $row->campo1; $campo2 = $row->campo2; endforeach;

caso o nmero de linhas forem menores ou iguais a 0


else:

mandar a mensagem de erro


echo "Nenhum resultado encontrado"; endif;

Ficamos por aqui com o Select.

INSERT
O insert serve como o nome j diz para inserir dados no banco de dados, no tem muito o que explicar, apenas mostrar:
$dados = array ( "campo1"=>"valor do campo1", "campo2"=>"valor do campo2" ); $this->db->insert('tabela_do_db', $dados);

Bem simples, porm deve-se notar que campo1 e campo2 so os nomes das colunas do modo em que se encontram no banco de dados, deve-se obedecer essa ordem: nome do campo=>valor a ser adicionado a ele.

http://www.multside.com.br

UPDATE
O update bem parecido com o Insert, s necessrio adicionar um where, pois sem ele o seu banco todo atualizado com o mesmo valor, o que pode significar uma perda irreparvel. Vamos ver como funciona o update ento:
$dados = array ( "campo1"=>"novo valor do campo1", "campo2"=>" novo valor do campo2" ); $this->db->where('campo1','1'); $this->db->update('tabela_do_db', $dados);

Bem simples tambm, e seque a mesma ordem: nome do campo=> valor a ser adicionado a ele.

DELETE
O Delete tambm simples e outro campo em que indispensvel usar o where, pois se voc executar um delete sem usar where deleta todo o seu banco de dados.
$this->db->delete('tabela_do_db', array('campo1'=>'1'));

Funciona da seguinte maneira, (nome da tabela, condio);

http://www.multside.com.br

CRIAO
Essa apostila foi criada pela empresa Multside Sistemas & Solues, para nos conhecer melhor, acesse o site: http://www.multside.com.br Espero que aproveitem o aprendizado. Obrigado!