2. http://www.multside.com.br
INSTALAÇÃO
Instalar o code-igniter é muito simples, basta que você tenha um servidor que
rode PHP 5 (para saber consulte a documentação PHP do seu servidor). Após ter
certeza que o seu servidor é compatível com PHP5, siga as etapas:
DOWNLOAD
Faça o Download da versão mais recente do code-igniter no site:
http://codeigniter.com/
UPLOAD
Envie os arquivos que você baixou para o seu servidor.
CONFIGURAÇÃO
Abra o arquivo config.php que está em systemapplicationconfig com o editor PHP
de sua preferência, localize:
$config['base_url'] = "http://your-site.com/";
E substitua por:
$config['base_url'] = "http://".$_SERVER['HTTP_HOST'];
E, caso o seu site não 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 próximo tópico, usando code-igniter
com Banco de Dados.
3. 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, porém, são precisos alguns ajustes de acordo com seu
banco de dados.
O que vamos precisar aqui são o nome, servidor, usuário e senha do seu banco
de dados.
Tendo essas informações, vamos a configurações, o arquivo de configurações
do banco de dados está também na pasta systemapplicationconfig, vá na pasta e
abra o arquivo database.php com o editor de sua preferência, altere os seguintes
locais de acordo com as informações do seu banco de dados:
$db['default']['hostname'] = "seu servidor"; //normalmente "localhost"
$db['default']['username'] = "seu usuário";
$db['default']['password'] = "sua senha";
$db['default']['database'] = "o nome do banco de dados";
Para usar banco de dados em alguma página é preciso colocar isso no início, dentro de
tags php (<?php ?>).
$this->load->database();
Ou simplesmente alterar o arquivo autoload.php, que também fica em
systemapplicationconfig, 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 precisão de colocar o load-
>database();.
Vamos agora, aprender a como usar ele, quando já iniciado.
4. http://www.multside.com.br
WHERE
O where é uma condição, 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 operação (seja ela qual for) nas linhas
onde campo1 tiver como valor o número 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 então 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.
Também é preciso dizer a ele onde buscar, em qual tabela, da seguinte forma:
$this->db->from('tabela_do_bd');
Somente isso não é suficiente para exprimir os dados na página, para isso
temos que gerar os resultados, existem dois meios para isso, e ambos usam:
$this->db->get();
O “get” executa as informações pedidas por select, para pegar os resultados,
colocamos ele em uma variável:
5. http://www.multside.com.br
$var = $this->db->get();
E depois partimos para um dos métodos:
1º - Com “foreach”
Nesse método 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 serão exprimidos apartir da variável $row
foreach($var->result() as $row):
aqui também defini variáveis para os campos que foram puxados da tabela
$campo1 = $row->campo1;
$campo2 = $row->campo2;
endforeach;
1º - Sem “foreach”
Nesse método não iremos usar foreach, vamos fazer de um método 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 são os dois métodos. Ao ver esses dois códigos vocês devem estar se
perguntando: “Por que usar o foreach? Já que o outro é bem mais simples.”
Realmente, sem foreach é bem mais simples, porém, dessa maneira só é
possível buscar a primeira linha que ele encontra no banco de dados com aquela
condição, ou seja, só uma linha, só 1 resultado.
Com foreach você busca todas as quais ele encontrar com aquela condição,
usando o seguinte:
foreach($var->result() as $row):
$campo1 .= $row->campo1;
$campo2 .= $row->campo2;
6. http://www.multside.com.br
endforeach;
Usando “.=”, com isso, a cada campo que ele encontrar ele vai aicioná-lo aquelas
variáveis.
Outra utilidade para o this->db->get()
Com ele também é possível verificar se existem dados com aquela condição, e
até mandar uma mensagem de erro caso não 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 número 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, não
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, porém deve-se notar que ‘campo1’ e ‘campo2’ são 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”.
7. http://www.multside.com.br
UPDATE
O “update” é bem parecido com o Insert, só é necessário adicionar um where,
pois sem ele o seu banco todo é atualizado com o mesmo valor, o que pode significar
uma perda irreparável.
Vamos ver como funciona o update então:
$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 também, e seque a mesma ordem: “nome do campo”=> “valor a
ser adicionado a ele”.
DELETE
O Delete também é simples e é outro campo em que é indispensável 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, condição);
8. http://www.multside.com.br
CRIAÇÃO
Essa apostila foi criada pela empresa Multside – Sistemas & Soluções, para nos
conhecer melhor, acesse o site: http://www.multside.com.br
Espero que aproveitem o aprendizado.
Obrigado!