CONTEÚDO PROGRAMÁTICO CodeIgniter 2 Completo Carga horária: 40 horas TreinaWeb Tecnologia LTDA CNPJ: 06.156.637/0001-58 Av. Paulista, 1765 - Conj 71 e 72 São Paulo - SP CONTEÚDO PROGRAMÁTICO Ementa do curso CodeIgniter 2 O que é um Framework? Benefícios de se utilizar um Framework Projeto sem padrão é dor de cabeça! Mercado de trabalho O CodeIgniter Vantagens de se usar o CodeIgniter Produtividade. Mais tempo para as regras de negócio Segurança Extensibilidade. O limite é o céu. Principais recursos do CodeIgniter URL Amigáveis Requisitos necessários para rodar o CodeIgniter 2 Design Pattern Padrão de Design de Software Introdução a Design Pattern Programação multicamada MVC - Model-View-Controller Model Camada de abstração de dados View Camada de apresentação Controller Camada de negócios
O que cada camada MVC faz? Comunicação entre as camadas MVC Configurando o ambiente de trabalho Configurando PHP/Apache Download do Framework A estrutura de diretórios do CodeIgniter Pasta user_guide Pasta system Pasta application Ativando a reescrita de URL e testando o CodeIgniter Eclipse com a extensão PDT para PHP Iniciando o Eclipse Criando um novo projeto PHP no Eclipse Configurando Autocomplete do CodeIgniter no Eclipse Criando um novo projeto no Eclipse Configurações finais do projeto Configurando o Eclipse para executar o projeto PHP Testando o CodeIgniter Sugestão de convenção para formatação dos códigos PHP Tag de fechamento Nome de classes Nome de métodos Nome de variáveis Comentários PHP Short opening tags Valores lógicos literais e valor de referência vazia Nome dos arquivos do projeto Olá Mundo!. Criando o primeiro exemplo no CodeIgniter Configurando o controlador padrão da aplicação
Criando e entendendo a estrutura de um controlador Método index() Criando a View olamundo Configuração de URL no CodeIgniter Adicionando sufixo às URLS Preparando o controlador para receber dados da URL Criando a View categoria_cursos Testando o exemplo Carregando mais de uma View CodeIgniter Helpers Helper no construtor do controlador Array Helper element() random_element() elements() Date Helper now() mdate() standard_date() mysql_to_unix() unix_to_human() timezones() e timezone_menu() Directory Helper directory_map() Download Helper force_download() E-mail helper File Helper read_file()
write_file() delete_files() get_filenames() get_dir_file_info() get_file_info() get_mime_by_extension() symbolic_permissions() octal_permissions() Form Helper form_open() form_open_multipart() form_hidden() form_input() form_dropdown() form_fieldset() form_checkbox() form_radio() form_submit() form_reset() form_label() form_button() set_value() HTML Helper heading() img() link_tag() nbs() ul() e ol() meta()
doctype() camelize() humanize() Number Helper byte_format() String Helper random_string() repeater() reduce_double_slashes() trim_slashes() reduce_multiples() quotes_to_entities() e strip_quotes() Text Helper word_limiter() character_limiter() ascii_to_entities() entities_to_ascii() word_censor() highlight_code() highlight_phrase() word_wrap() ellipsize() URL Helper site_url() base_url() current_url() echo current_url(); uri_string() anchor()
anchor_popup() auto_link() url_title() redirect() Trabalhando com bibliotecas no CodeIgniter A biblioteca Benchmarking Teste de Benchmarking Múltiplos pontos de teste Exibindo um Benchmarking completo da aplicação através da classe Profiler Pseudo-variáveis de Benchmarking Biblioteca de calendário Biblioteca de segurança Proteção contra Cross-Site Scripting (XSS) Recebendo dados de POST e GET Configuração global de proteção XSS get() get_post() Obtendo todos os campos de POST e GET Trabalhando com Cookies Definindo um Cookie Outros métodos da classe Input ip_address(), valid_ip() e user_agent() server() request_headers(), get_request_header() e is_ajax_request() CSRF (Cross-site request forgery) Como funciona um ataque CSRF Como se proteger de CSRF e outros ataques Aplicando proteção CSRF nos formulários Classe de Segurança
Trabalhando com sessões Funcionamento das sessões no CodeIgniter Como e quais dados são armazenados? Criando e deletando sessões Destruindo todos os itens da sessão Sessões FlashData Classe de envio de E-mail Método simples de envio de E-mail Método avançado de envio de E-mail Usando um servidor SMTP Definindo preferências de E-mail em um arquivo de configuração Manipulando arquivos de configuração Definindo uma configuração em tempo de execução Outras opções de envio de E-mail Mensagem alternativa Anexar arquivos no E-mail Conclusão sobre E-mails Unit Test Teste de unidade URI Manipulação de segmentos Capturando segmentos da URL slash_segment() uri_to_assoc() assoc_to_uri() uri_string() total_segments() segment_array() Considerações finais Classe para validação de formulários Criando o exemplo de validação Testando o exemplo da Validation Class
Definindo regras de validação Outras regras de validação Tratando os dados validados Criando suas próprias funções de validação Definindo conjuntos de regras de validações em um arquivo de configuração Associando um controlador a um grupo de validação Internacionalização (multi-idioma) Internacionalizando as mensagens de erro da validação Carregando um arquivo de idioma Carregando um arquivo de idioma automaticamente - autoload Criando nossos próprios Helpers Criando e usando um Helper Criando nossas próprias bibliotecas Banco de dados Database Configurações de banco de dados Preparando o banco de dados com o Mysql Workbench Criando a tabela Sistema de Agenda (CRUD) com login e paginação Preparando o diretório Criando as pastas dos arquivos estáticos Configurando o projeto no Eclipse Configurando o CodeIgniter no projeto Agenda Criando o Controller e a View Model A camada de abstração de dados Formas de se carregar um Model Bancos de dados e Conexões Baixando e instalando o banco de dados PostgreSQL Criando e inserindo dados no PostgreSQL Configurando a extensão de conexão do PostgreSQL no PHP
Grupos de conexões Bancos de dados e Conexões Carregando um BD manualmente Carregando múltiplos bancos de dados Executando Querys result() result_array() row(), row_array() e outros ponteiros de navegação Query Helpers do objeto Outros métodos de consulta e métodos de Query Escaping Querys parametrizadas - Query Bindings Query Helpers Active Record Pattern Selecionando com get() e get_where() select() Métodos max, min, avg, sum from() Join() Métodos Where Métodos Like group_by() distinct() having() order_by() limit() count_all_results() Comandos para inserção de dados Comandos para atualização e remoção Métodos aninhados / encadeados Query Caching Cache de consultas ao banco de dados
Exemplo de Query Caching usando Active Records Dando continuidade ao projeto final Agenda CRUD Criando a tabela usuários para o sistema de login Alterando a rota Estrutura de diretórios Entendendo como a aplicação funciona Conclusão Ficou alguma dúvida em relação ao conteúdo programático? Envie-nos um e-mail clicando aqui. 2004-2017 TreinaWeb www.treinaweb.com.br