1. O documento discute HTML, páginas web e como navegadores interpretam arquivos HTML para exibir conteúdo na web.
2. É introduzido o que é HTML, como é uma linguagem de marcação usada para formatar conteúdo em páginas da web.
3. São explicados conceitos como tags, atributos e como eles afetam a formatação e exibição do conteúdo em páginas da web.
Este documento fornece um resumo da apostila do módulo Writer do BrOffice.org. Ele explica como iniciar um novo documento de texto ou abrir um existente, salvar arquivos, formatar texto e parágrafos, inserir figuras e tabelas, verificar ortografia e outras funções do editor de texto.
Este documento fornece informações sobre um curso de introdução ao BrOffice, incluindo seus objetivos, público-alvo, pré-requisitos, descrição, metodologia, cronograma e avaliação. Ele também aborda conceitos iniciais sobre o BrOffice e guias de instalação, além de fornecer detalhes sobre os módulos do Writer (editor de texto), Calc (planilha eletrônica) e Impress (apresentações).
1) O documento apresenta um treinamento sobre SQL e modelo relacional, abordando conceitos como banco de dados, tabelas, consultas e relacionamentos.
2) São apresentados os principais comandos SQL como SELECT, WHERE, ORDER BY, GROUP BY e funções de agregação.
3) Também são explicados os tipos de relacionamento entre tabelas como one-to-one, one-to-many, many-to-many e como implementá-los utilizando chaves primárias e estrangeiras.
Desenvolvimento-web-com-html-css-e-javascriptManuel Fernando
Este documento é um treinamento sobre desenvolvimento web com HTML, CSS e JavaScript. Ele contém instruções e exercícios sobre essas tecnologias, incluindo 289 exercícios de fixação, 164 exercícios complementares e 56 questões de prova.
O documento discute drivers de dispositivos no Linux, incluindo introdução a drivers de dispositivos, estruturas importantes como file operations e filp, e exemplos passo a passo para desenvolvimento de um driver simples chamado mydev.
1. O documento apresenta um treinamento sobre C# e Orientação a Objetos, abordando tópicos como lógica de programação, orientação a objetos, arrays.
2. Os principais tópicos incluem introdução à orientação a objetos, lógica de programação, variáveis, operadores, estruturas de controle, classes, objetos, métodos, construtores e arrays.
3. O treinamento é dividido em 4 módulos e inclui exercícios para fixação e aprofundamento dos conceitos apresentados.
1. A Caelum é uma empresa de consultoria, desenvolvimento e ensino em computação com mais de 80 profissionais. Ela oferece treinamentos em Java, Ruby on Rails e Scrum em São Paulo, Rio de Janeiro e Brasília. Mais de 8 mil alunos já participaram dos treinamentos.
2. A Caelum tem como compromisso oferecer treinamentos de qualidade com material atualizado, metodologia de ensino cuidadosamente desenvolvida e instrutores tecnicamente e didaticamente capacitados.
3. Além de treinamentos, a
O documento apresenta um curso sobre desenvolvimento web com ASP.NET MVC 4, abordando os tópicos de bancos de dados, ADO.NET, Entity Framework e ASP.NET MVC. O curso é dividido em 5 módulos tratando de bancos de dados, ADO.NET, Entity Framework, Visão Geral do ASP.NET MVC e Camada de Apresentação.
Este documento fornece um resumo da apostila do módulo Writer do BrOffice.org. Ele explica como iniciar um novo documento de texto ou abrir um existente, salvar arquivos, formatar texto e parágrafos, inserir figuras e tabelas, verificar ortografia e outras funções do editor de texto.
Este documento fornece informações sobre um curso de introdução ao BrOffice, incluindo seus objetivos, público-alvo, pré-requisitos, descrição, metodologia, cronograma e avaliação. Ele também aborda conceitos iniciais sobre o BrOffice e guias de instalação, além de fornecer detalhes sobre os módulos do Writer (editor de texto), Calc (planilha eletrônica) e Impress (apresentações).
1) O documento apresenta um treinamento sobre SQL e modelo relacional, abordando conceitos como banco de dados, tabelas, consultas e relacionamentos.
2) São apresentados os principais comandos SQL como SELECT, WHERE, ORDER BY, GROUP BY e funções de agregação.
3) Também são explicados os tipos de relacionamento entre tabelas como one-to-one, one-to-many, many-to-many e como implementá-los utilizando chaves primárias e estrangeiras.
Desenvolvimento-web-com-html-css-e-javascriptManuel Fernando
Este documento é um treinamento sobre desenvolvimento web com HTML, CSS e JavaScript. Ele contém instruções e exercícios sobre essas tecnologias, incluindo 289 exercícios de fixação, 164 exercícios complementares e 56 questões de prova.
O documento discute drivers de dispositivos no Linux, incluindo introdução a drivers de dispositivos, estruturas importantes como file operations e filp, e exemplos passo a passo para desenvolvimento de um driver simples chamado mydev.
1. O documento apresenta um treinamento sobre C# e Orientação a Objetos, abordando tópicos como lógica de programação, orientação a objetos, arrays.
2. Os principais tópicos incluem introdução à orientação a objetos, lógica de programação, variáveis, operadores, estruturas de controle, classes, objetos, métodos, construtores e arrays.
3. O treinamento é dividido em 4 módulos e inclui exercícios para fixação e aprofundamento dos conceitos apresentados.
1. A Caelum é uma empresa de consultoria, desenvolvimento e ensino em computação com mais de 80 profissionais. Ela oferece treinamentos em Java, Ruby on Rails e Scrum em São Paulo, Rio de Janeiro e Brasília. Mais de 8 mil alunos já participaram dos treinamentos.
2. A Caelum tem como compromisso oferecer treinamentos de qualidade com material atualizado, metodologia de ensino cuidadosamente desenvolvida e instrutores tecnicamente e didaticamente capacitados.
3. Além de treinamentos, a
O documento apresenta um curso sobre desenvolvimento web com ASP.NET MVC 4, abordando os tópicos de bancos de dados, ADO.NET, Entity Framework e ASP.NET MVC. O curso é dividido em 5 módulos tratando de bancos de dados, ADO.NET, Entity Framework, Visão Geral do ASP.NET MVC e Camada de Apresentação.
O documento fornece um guia de treinamento para desenvolvimento web com ASP.NET MVC 4. Ele contém seções sobre banco de dados, Entity Framework, introdução ao ASP.NET MVC, camadas de apresentação e controle, validação e sessão.
Este manual fornece instruções sobre como usar o editor Kate, incluindo como iniciar, navegar na interface, usar plugins e ferramentas, personalizar configurações e estender suas funcionalidades. O manual também lista as opções de menu e fornece detalhes sobre recursos avançados.
O documento discute os conceitos fundamentais de programação orientada a objetos em Java, incluindo lógica de programação, classes, objetos, métodos e arrays.
1. O documento descreve os principais tópicos sobre integração de sistemas com JMS, JAX-WS e JAX-RS.
2. A seção de JMS discute conceitos como Middleware Orientado a Mensagens (MOM), destinos como filas e tópicos, e exercícios para trabalhar com esses conceitos utilizando JMS.
3. As seções de JAX-WS e JAX-RS abordam a criação e consumo de web services, respectivamente, utilizando essas tecnologias Java.
O documento apresenta um curso sobre desenvolvimento web com HTML, CSS e JavaScript, abordando tópicos como estrutura básica de HTML, semântica, links, imagens, tabelas, CSS, JavaScript, variáveis, funções, objetos e arrays.
Este documento é uma apostila sobre conceitos básicos da linguagem C# para programação .NET. A apostila introduz os principais tópicos como a plataforma .NET, a estrutura de um programa C#, variáveis, comandos, operadores, programação orientada a objetos, tratamento de erros, manipulação de arquivos e conexão com banco de dados. O documento é dividido em 12 seções principais cobrindo esses assuntos fundamentais da linguagem C#.
Este documento apresenta um curso sobre desenvolvimento web com HTML, CSS e JavaScript. O curso é dividido em três módulos, sendo o primeiro sobre HTML, o segundo sobre CSS e o terceiro sobre JavaScript. Cada módulo contém explicações teóricas dos principais conceitos e vários exercícios de fixação e complementares.
Este documento apresenta cursos sobre desenvolvimento web com JSF2 e JPA2, incluindo tópicos sobre banco de dados com MySQL, JDBC, JPA e Hibernate, e web containers. Os cursos abordam conceitos como sistemas gerenciadores de banco de dados, criação de tabelas e manipulação de dados, mapeamento objeto-relacional com JPA e Hibernate, e implementação de aplicações web Java.
O documento apresenta um curso introdutório sobre LaTeX, abordando tópicos como a instalação do LaTeX e editor Kile, estrutura básica de um documento LaTeX, formatação de texto, inserção de fórmulas matemáticas, figuras e tabelas.
Este documento fornece um resumo dos principais cursos e serviços oferecidos pela Caelum, incluindo cursos online, livros, blog, newsletter e redes sociais. Além disso, lista detalhes de alguns cursos presenciais sobre Java, Ruby e desenvolvimento web. Por fim, fornece informações sobre a metodologia de ensino da Caelum e sobre como obter as apostilas dos cursos.
Este documento é um manual de documentação para o framework CakePHP versão 2.x. Ele contém instruções sobre como instalar e configurar o CakePHP, criar aplicações com ele usando os padrões MVC, desenvolver plugins, tutoriais e guias de migração entre versões.
Este manual descreve o software Fenix 1.99 da Nox Automação. Ele contém instruções sobre a instalação e uso das principais funções do sistema, incluindo cadastros, vendas, clientes e relatórios. O manual é dividido em cinco partes cobrindo tópicos como funções comuns, cadastros, vendas, ambientes principais e customização.
O documento descreve o software de gestão documental iPortalDoc, incluindo suas características, interfaces, funcionalidades e menus. O iPortalDoc permite gerenciar documentos, configurar fluxos de trabalho, definir perfis de usuário e integrar-se com sistemas de arquivos e e-mail.
1. O documento apresenta um curso sobre desenvolvimento web com foco em bancos de dados, JDBC, JPA e Hibernate.
2. Os tópicos incluem sistemas gerenciadores de banco de dados, MySQL, JDBC, ORM e ferramentas como JPA e Hibernate.
3. Também aborda web containers e servlets para construção de aplicações web Java.
1. O documento apresenta um treinamento sobre persistência com JPA 2 e Hibernate.
2. O treinamento aborda tópicos como configuração, mapeamento, manipulação de entidades e relacionamentos.
3. Também discute conceitos importantes como estados das entidades, sincronização com o banco de dados, lazy e eager loading e caching.
O documento apresenta um curso sobre desenvolvimento mobile com Android. O curso aborda tópicos como introdução à plataforma Android, criação de aplicativos, layouts, uso de intents, persistência de dados, HTTP e JSON, threads e serviços. O curso é composto por 10 módulos que ensinam sobre essas temáticas e incluem exercícios de fixação.
Este documento apresenta uma apostila sobre a linguagem de programação Perl. Ele contém 11 lições sobre tópicos básicos como variáveis, arrays, hashes, expressões regulares e objetos. A apostila também discute tópicos mais avançados como módulos, callbacks e processamento de arquivos e URLs.
Este documento apresenta uma apostila sobre o Arduino, descrevendo suas características, funcionalidades e aplicações. É dividido em seções tratando da introdução ao Arduino, características da placa Duemilanove, linguagem de programação, instalação do software e exemplos de projetos.
Este documento define as condições para o pagamento de uma subvenção econômica para produtores de cana-de-açúcar nas regiões da SUDENE e Rio de Janeiro referente à safra 2010/2011. Ele estabelece os beneficiários, destinação da cana-de-açúcar, volume de recursos e limites por produtor. Também lista os documentos necessários para receber a subvenção e os prazos para entrega. Por fim, determina que a CONAB publique a relação dos beneficiários.
O documento fornece informações sobre a divisão política e regional do Brasil, descrevendo as cinco regiões do país e suas características demográficas e econômicas. Também discute a posição do Brasil na América Latina no contexto de organizações como a OEA, ALADI e Mercosul, e fornece detalhes sobre a população brasileira, incluindo sua distribuição irregular e áreas mais densamente povoadas.
O documento descreve a produção de petróleo por produtores independentes na Bahia. A Bahia foi o berço da indústria de petróleo no Brasil e ainda abriga 15 campos produtores operados por empresas independentes. Duas das principais produtoras independentes na Bahia, a Petrosynergy e a Alvorada Petróleo, são destacadas com detalhes sobre suas operações e descobertas na região.
O documento fornece um guia de treinamento para desenvolvimento web com ASP.NET MVC 4. Ele contém seções sobre banco de dados, Entity Framework, introdução ao ASP.NET MVC, camadas de apresentação e controle, validação e sessão.
Este manual fornece instruções sobre como usar o editor Kate, incluindo como iniciar, navegar na interface, usar plugins e ferramentas, personalizar configurações e estender suas funcionalidades. O manual também lista as opções de menu e fornece detalhes sobre recursos avançados.
O documento discute os conceitos fundamentais de programação orientada a objetos em Java, incluindo lógica de programação, classes, objetos, métodos e arrays.
1. O documento descreve os principais tópicos sobre integração de sistemas com JMS, JAX-WS e JAX-RS.
2. A seção de JMS discute conceitos como Middleware Orientado a Mensagens (MOM), destinos como filas e tópicos, e exercícios para trabalhar com esses conceitos utilizando JMS.
3. As seções de JAX-WS e JAX-RS abordam a criação e consumo de web services, respectivamente, utilizando essas tecnologias Java.
O documento apresenta um curso sobre desenvolvimento web com HTML, CSS e JavaScript, abordando tópicos como estrutura básica de HTML, semântica, links, imagens, tabelas, CSS, JavaScript, variáveis, funções, objetos e arrays.
Este documento é uma apostila sobre conceitos básicos da linguagem C# para programação .NET. A apostila introduz os principais tópicos como a plataforma .NET, a estrutura de um programa C#, variáveis, comandos, operadores, programação orientada a objetos, tratamento de erros, manipulação de arquivos e conexão com banco de dados. O documento é dividido em 12 seções principais cobrindo esses assuntos fundamentais da linguagem C#.
Este documento apresenta um curso sobre desenvolvimento web com HTML, CSS e JavaScript. O curso é dividido em três módulos, sendo o primeiro sobre HTML, o segundo sobre CSS e o terceiro sobre JavaScript. Cada módulo contém explicações teóricas dos principais conceitos e vários exercícios de fixação e complementares.
Este documento apresenta cursos sobre desenvolvimento web com JSF2 e JPA2, incluindo tópicos sobre banco de dados com MySQL, JDBC, JPA e Hibernate, e web containers. Os cursos abordam conceitos como sistemas gerenciadores de banco de dados, criação de tabelas e manipulação de dados, mapeamento objeto-relacional com JPA e Hibernate, e implementação de aplicações web Java.
O documento apresenta um curso introdutório sobre LaTeX, abordando tópicos como a instalação do LaTeX e editor Kile, estrutura básica de um documento LaTeX, formatação de texto, inserção de fórmulas matemáticas, figuras e tabelas.
Este documento fornece um resumo dos principais cursos e serviços oferecidos pela Caelum, incluindo cursos online, livros, blog, newsletter e redes sociais. Além disso, lista detalhes de alguns cursos presenciais sobre Java, Ruby e desenvolvimento web. Por fim, fornece informações sobre a metodologia de ensino da Caelum e sobre como obter as apostilas dos cursos.
Este documento é um manual de documentação para o framework CakePHP versão 2.x. Ele contém instruções sobre como instalar e configurar o CakePHP, criar aplicações com ele usando os padrões MVC, desenvolver plugins, tutoriais e guias de migração entre versões.
Este manual descreve o software Fenix 1.99 da Nox Automação. Ele contém instruções sobre a instalação e uso das principais funções do sistema, incluindo cadastros, vendas, clientes e relatórios. O manual é dividido em cinco partes cobrindo tópicos como funções comuns, cadastros, vendas, ambientes principais e customização.
O documento descreve o software de gestão documental iPortalDoc, incluindo suas características, interfaces, funcionalidades e menus. O iPortalDoc permite gerenciar documentos, configurar fluxos de trabalho, definir perfis de usuário e integrar-se com sistemas de arquivos e e-mail.
1. O documento apresenta um curso sobre desenvolvimento web com foco em bancos de dados, JDBC, JPA e Hibernate.
2. Os tópicos incluem sistemas gerenciadores de banco de dados, MySQL, JDBC, ORM e ferramentas como JPA e Hibernate.
3. Também aborda web containers e servlets para construção de aplicações web Java.
1. O documento apresenta um treinamento sobre persistência com JPA 2 e Hibernate.
2. O treinamento aborda tópicos como configuração, mapeamento, manipulação de entidades e relacionamentos.
3. Também discute conceitos importantes como estados das entidades, sincronização com o banco de dados, lazy e eager loading e caching.
O documento apresenta um curso sobre desenvolvimento mobile com Android. O curso aborda tópicos como introdução à plataforma Android, criação de aplicativos, layouts, uso de intents, persistência de dados, HTTP e JSON, threads e serviços. O curso é composto por 10 módulos que ensinam sobre essas temáticas e incluem exercícios de fixação.
Este documento apresenta uma apostila sobre a linguagem de programação Perl. Ele contém 11 lições sobre tópicos básicos como variáveis, arrays, hashes, expressões regulares e objetos. A apostila também discute tópicos mais avançados como módulos, callbacks e processamento de arquivos e URLs.
Este documento apresenta uma apostila sobre o Arduino, descrevendo suas características, funcionalidades e aplicações. É dividido em seções tratando da introdução ao Arduino, características da placa Duemilanove, linguagem de programação, instalação do software e exemplos de projetos.
Este documento define as condições para o pagamento de uma subvenção econômica para produtores de cana-de-açúcar nas regiões da SUDENE e Rio de Janeiro referente à safra 2010/2011. Ele estabelece os beneficiários, destinação da cana-de-açúcar, volume de recursos e limites por produtor. Também lista os documentos necessários para receber a subvenção e os prazos para entrega. Por fim, determina que a CONAB publique a relação dos beneficiários.
O documento fornece informações sobre a divisão política e regional do Brasil, descrevendo as cinco regiões do país e suas características demográficas e econômicas. Também discute a posição do Brasil na América Latina no contexto de organizações como a OEA, ALADI e Mercosul, e fornece detalhes sobre a população brasileira, incluindo sua distribuição irregular e áreas mais densamente povoadas.
O documento descreve a produção de petróleo por produtores independentes na Bahia. A Bahia foi o berço da indústria de petróleo no Brasil e ainda abriga 15 campos produtores operados por empresas independentes. Duas das principais produtoras independentes na Bahia, a Petrosynergy e a Alvorada Petróleo, são destacadas com detalhes sobre suas operações e descobertas na região.
Este documento apresenta os resultados do Atlas Brasil, um estudo desenvolvido pela Agência Nacional de Águas (ANA) desde 2005 para analisar o abastecimento de água nas cidades brasileiras e propor soluções para garantir o suprimento a todos os municípios. O Atlas mapeia a oferta hídrica nas regiões e identifica projetos para equacionar déficits, servindo como ferramenta para planejamento de longo prazo. O Volume 1 resume os achados nacionais e o Volume 2 detalha os resultados por estado.
1. O documento apresenta a terceira estimativa da safra brasileira de café de 2014 realizada pela CONAB em setembro.
2. Estimou-se uma produção total de 45,14 milhões de sacas de café beneficiado, 8,16% menor que a safra anterior.
3. A produção de arábica foi estimada em 32,11 milhões de sacas, 16,14% menor, enquanto a produção de conilon foi estimada em 13,03 milhões de sacas, 19,95% maior.
Inconfidência nº 224 de 29 de fevereiroLucio Borges
O jornal defende a Revolução de 1964 e critica o comunismo. Promoverá evento em comemoração aos 52 anos do golpe militar. Também publica artigos defendendo uma revolução no Brasil e criticando o ex-presidente Lula.
O documento discute três tópicos principais:
1) Seminário na prefeitura debate o crescimento urbano da cidade e encaminha projeto do jardim botânico ao governo.
2) Alunos da escola Thomé de Souza participam de atividades lúdicas durante evento educacional.
3) Repórter inicia curso de Libras e curso de enfermagem clínica hospitalar, e associação faz seleção de novos estagiários para programa na Alemanha.
Guia nacional de_coleta_e_preservacao_de_amostras_100604
Este documento apresenta o Guia Nacional de Coleta e Preservação de Amostras de Água, Sedimento, Comunidades Aquáticas e Efluentes Líquidos, elaborado pela Agência Nacional de Águas e Companhia Ambiental do Estado de São Paulo. O guia fornece diretrizes para a coleta e preservação corretas dessas amostras ambientais de forma a garantir a qualidade e confiabilidade dos resultados analíticos.
O autor discute a entrada do palhaço no ambiente hospitalar para levar alegria às crianças, e os efeitos disso. Ele observa que a "humanização hospitalar" se popularizou a partir da experiência da alegria, mas questiona o que realmente se quer mudar nos hospitais e no conceito de saúde. Também reflete sobre novas formas de pensar os hospitais e seu papel na sociedade.
O documento resume as principais notícias de um jornal local de Guarapari, ES. Entre as matérias, destaca-se a inauguração de uma nova sede do Corpo de Bombeiros de Guarapari, o anúncio de repasses de verbas para projetos de educação ambiental em Linhares, e a abertura de mil novas vagas de estágio pelo governo do estado.
Manual Étnico-racial para o JornalismoJuliana Dias
Trabalho de Conclusão de Curso entregue à Coordenação do Curso de Comunicação Social com habilitação em Jornalismo como requisito parcial para conclusão do curso. Trata-se de um guia de redação para jornalistas, voltado para a cobertura de temas sobre a população negra e de interesse desse grupo social por veículos impressos. O produto reúne informações que sirvam de subsídio para que os profissionais da área produzam conteúdos, em consonância com a Declaração Universal dos Diretos Humanos e a Constituição Federal no que se referem ao afro-descendente e com o Estatuto da Igualdade Racial.
O "Jornal do Beirú" trata-se de um projeto de comunicação comunitária com foco nas questões raciais e, sobretudo, no fomento da elevação da autoestima da juventude negra do Beirú e adjacências, bairro localizado na região do Cabula, na cidade de Salvador - BA.
O Jornal do Beirú é escrito por jovens moradores do bairro do Beirú, portanto são eles(as) que deverão tomar para si a tarefa de serem artífices de sua própria história e ser um registro de memória da história reconstruída por historiadores. Essa perspectiva ganha uma dimensão maior quando falamos de “afrodescendência”, pois estamos nos referindo a uma parcela da população, que é maioria, e vive um processo de exclusão já secular no Brasil. Isso precisa ser contado e transferido por esta mesma população afrodescendente.
O Jornal do Beirú tem a preocupação de recuperar a história do próprio local, em seus diversos estilos de textos jornalísticos e fotografias, tentando desta forma recuperar a dignidade desta população majoritariamente afrodescendente. Sabemos que um dos maiores problemas de inserção da juventude negra é a falta de autoestima. Um jornal que discuta estas questões, através de problemas concretos do cotidiano do bairro pode ser um importante instrumento nesta direção.
Manhuaçu é uma cidade brasileira localizada no estado de Minas Gerais com aproximadamente 75 mil habitantes. Sua economia é baseada na indústria, principalmente do café, e no turismo devido às suas belezas naturais como cachoeiras. A cidade possui uma rica história desde o século XIX quando comerciantes e imigrantes começaram a povoar a região.
O documento discute a rede regional de supermercados Tauste, localizada no interior de São Paulo. A rede começou com uma pequena loja em 1991 e hoje possui três unidades, após investimentos constantes em modernização e treinamento de funcionários. A rede se destaca por sua gestão moderna, uso de tecnologia e atendimento personalizado aos clientes locais.
1) O documento apresenta um balanço dos quatro anos do Programa de Aceleração do Crescimento (PAC) no Brasil, de 2007 a 2010.
2) O PAC conseguiu acelerar o crescimento econômico brasileiro para uma taxa média de 4,6% ao ano no período, maior do que em períodos anteriores, e ajudou a mitigar os impactos da crise econômica internacional.
3) Os investimentos públicos dobraram no período, a taxa de desemprego caiu para o menor nível da
O documento resume a formação e experiência profissional de Celson Ricardo Carvalho de Oliveira. Ele se formou em Direito em 1998 e atuou como advogado em diversas instituições, especializando-se em Direito Administrativo, Econômico e Empresarial. Atualmente presta serviços jurídicos para organizações como o Grupo Ambientalista da Bahia e a Federação das Associações de Bairros de Salvador.
1) A globalização é um processo econômico e social que integra países e pessoas através do comércio, transações financeiras e difusão de aspectos culturais.
2) As esferas da globalização econômica incluem a globalização comercial, financeira e produtiva através da integração de mercados e fluxos de capitais entre nações.
3) Após a 2a Guerra Mundial, organizações como o FMI, Banco Mundial e OMC foram criadas para estabelecer regras para o comércio e finan
- O artigo destaca a importância de fazer bom uso do tempo em 2015 através da vivência diária do Amor Solidário, que coloca o ser humano sob a proteção de Deus.
- É enfatizado que sempre haverá solução para os problemas quando os seres humanos se respeitarem mutuamente e usarem tanto a mente quanto o coração.
- A educação dos sentimentos no bem é apontada como essencial, para que o interior das pessoas não seja poluído e contamine tudo ao redor.
O documento lista os resultados da primeira etapa do 9o Concurso de Qualidade dos Cafés de Minas Gerais nas categorias Natural e Cereja Descasado, com 148 produtores classificados por ordem alfabética, indicando o nome, município, região e se o café é natural.
Mercado de trabalho marketing e vendas- artigoDeborah Moreira
1. O documento discute o mercado de trabalho para cientistas da computação nas áreas de marketing e vendas, especificamente no desenvolvimento de softwares e na internet.
2. Analisa como o marketing ajuda na divulgação e vendas de softwares, e como softwares de gerenciamento de dados e CRM apoiam o marketing.
3. Conclui que embora o marketing procure principalmente profissionais de marketing, ainda precisa de cientistas da computação para dar suporte às ferramentas tecnológicas.
Este documento apresenta um manual sobre redes de computadores. O manual foi escrito por Gustavo Lopes de Oliveira Santos e se encontra em versão digital no formato PDF, podendo ser baixado gratuitamente. O conteúdo está licenciado sob a licença Creative Commons, permitindo que seja copiado e distribuído desde que o autor seja creditado.
O documento fornece uma introdução sobre alternativas ao software proprietário, descrevendo vários aplicativos livres para navegação na internet, escritório, desenvolvimento web, edição de imagem, áudio e vídeo.
Este documento fornece uma introdução ao ambiente R, abordando tópicos como a instalação e uso básico do R, pacotes disponíveis, objetos fundamentais como vetores e matrizes, programação em R incluindo funções e depuração, e manipulação e visualização de dados.
Este documento apresenta as seguintes informações sobre a linguagem G-Portugol:
1) Discute as características gerais da linguagem, incluindo seus tipos de dados primitivos como inteiro e literal, e estruturas de controle como condicionais e repetição.
2) Explica que o objetivo do manual é servir como referência para a linguagem G-Portugol e suas ferramentas, assumindo que o leitor tenha conhecimento prévio de programação.
3) Fornece um resumo dos tópicos ab
Este documento apresenta os conceitos fundamentais da computação gráfica, incluindo sistemas gráficos, hardware gráfico, sistemas de coordenadas, dispositivos de visualização e entrada, algoritmos para desenho de primitivas gráficas e preenchimento de polígonos, e transformações 2D e 3D.
Este documento fornece um tutorial sobre o uso da ferramenta Uppaal para modelagem e verificação de sistemas de tempo real. O tutorial introduz os conceitos básicos do Uppaal, apresenta dois casos de estudo e inclui exercícios práticos para testar a compreensão do leitor.
Este documento descreve uma apostila sobre o Arduino, apresentando suas características, linguagem de programação e exemplos de projetos que podem ser desenvolvidos.
Este livro apresenta o framework Angular 2 utilizando TypeScript, Node, SystemJS e Visual Studio Code. O livro ensina os conceitos básicos de TypeScript como tipos, classes, módulos e decorators, e em seguida cobre a criação de componentes Angular, templates, serviços, formulários e comunicação com servidores.
Este documento fornece informações sobre um curso de SQL, incluindo objetivos, público-alvo, pré-requisitos, programação e avaliação. Também discute conceitos básicos da linguagem SQL e exemplos de comandos.
Este documento discute os principais paradigmas de linguagens de programação, incluindo orientação a objetos, funcional e lógica. Aborda tópicos como tipos de dados, escopo, módulos, exceções, coleta de lixo e características-chave de linguagens como Smalltalk, Lisp, ML, Prolog e linguagens baseadas em fluxo de dados. Fornece uma introdução abrangente aos principais paradigmas de programação e como eles são apoiados por diferentes linguagens.
Este manual descreve o editor LaTeX Kile. Ele explica como iniciar um novo documento LaTeX usando modelos, editar documentos LaTeX usando recursos como realce de sintaxe e autocompletamento, e compilar documentos. O manual também cobre assistentes, menus personalizáveis e ferramentas de construção.
Este documento descreve os fundamentos da programação orientada a objetos e da linguagem Java, incluindo tópicos como classes, herança, polimorfismo, tipos primitivos, expressões, exceções, APIs, desenvolvimento de interfaces gráficas e applets.
1. O documento apresenta um curso sobre lógica de programação, banco de dados e data warehouse ministrado pelo professor Julio Alves. 2. O curso é dividido em três capítulos, abordando conceitos básicos, algoritmos, variáveis, tipos de dados, estruturas de repetição e outros tópicos de lógica de programação no primeiro capítulo. 3. No segundo capítulo, fala-se sobre introdução a banco de dados, modelo conceitual e lógico, propriedades, SGBD e outros assuntos relacionados. 4.
Este documento fornece informações sobre PHP, incluindo o que é PHP, como instalá-lo e configurá-lo, sintaxe básica, tipos de dados, operadores, estruturas de controle e funções. O documento também descreve o plano de ensino para um curso de PHP.
Ncl e Lua - desenvolvendo aplicações interativas para tv digitalRafael Carvalho
A TV digital interativa traz inúmeras facilidades e oportunidades para os programas de televisão.
Com o uso deste sistema, os telespectadores podem ter acesso a jogos e programas interativos cujo conteúdo pode ser moldado de acordo com a sua escolha.
Nessa apostila você terá acesso a uma introdução ao desenvolvimento de aplicações para TV Digital.
Este documento apresenta um plano de ensino sobre introdução à microinformática - hardware. O documento descreve os principais componentes de um computador como monitor, teclado, gabinete, placa-mãe, processador, memória RAM, disco rígido e placa de vídeo. Além disso, fornece detalhes sobre os objetivos, público-alvo, cronograma e avaliação do curso.
Este documento descreve um projeto desenvolvido para a disciplina de Projeto na Universidade da Beira Interior. O objetivo do projeto foi construir uma plataforma que permitisse melhorar a experiência de utilização dos transportes públicos através da computação ubíqua. A equipa desenvolveu uma arquitetura complexa que inclui um servidor, aplicações móveis e clientes Windows para fornecer informações aos utilizadores. O relatório detalha o trabalho realizado em cada componente para alcançar este objetivo.
Este documento fornece informações sobre o software Blender, incluindo:
1) Uma introdução ao Blender, sua história e visão geral;
2) Instruções para instalação do Blender;
3) Uma explicação da interface do usuário do Blender;
4) Diretrizes para manipulação e modelagem de objetos no Blender.
Este manual descreve as funções e operações de um GPS tracker TV 7". Ele inclui instruções sobre como carregar e ligar o dispositivo, usar suas funções como player de música e vídeo, visualizar imagens e ler e-books. Além disso, fornece detalhes sobre manutenção e especificações técnicas.
Este manual descreve as funções e operações de um GPS tracker TV 7". Ele inclui instruções sobre como carregar e ligar o dispositivo, usar suas funções como player de música e vídeo, visualizar imagens e ler e-books. Além disso, fornece detalhes sobre manutenção e especificações técnicas.
1. ~ ^
INSTITUTO FEDERAL DE EDUCACAO, CIENCIA
E TECNOLOGIA DO CEARA
Internet e Web
Novas Tecnologias para
Material de Apoio
Jos Roberto Bezerra
e
Daniel Silva Ferreira
v1.0
5. Prefcio
a
Este material foi produzido para servir de apoio a disciplina Novas Tecnologias Web do curso tcnico
e
a dist^ncia em Informtica. Seu principal objetivo ser um guia que contm todo o contedo que
a a e e u
ser abordado durante a disciplina, mas que necessita ser complementado com outros materiais como
a
v
deo aulas, livros, sites indicados, alm dos mecanismos de aprendizagem dispon
e veis na ferramenta
(email, frum, etc).
o
5
7. Cap
tulo 1
Um pouco sobre HTML
e
Triste poca! E mais fcil desintegrar um tomo do que um preconceito.
a a
Albert Einstein
Antes de comear o estudo sobre qualquer linguagem de programaao para web, necessrio
c c~ e a
entender o funcionamento de um navegador. Os browsers, como Internet Explorer, Mozilla Firefox,
Safari e outros, nada mais s~o do que visualizadores de documentos HTML, ou seja, recebem arquivos
a
HTML provenientes de um servidor web, interpretam e exibem o resultado para o usurio na forma
a
de hipertexto, imagens e tudo mais que pode ser visualizado atravs dos navegadores.
e
O HTML (Hypertext Markup Language ) exatamente a maneira como as pginas web s~o de-
e a a
scritas. E uma pseudo-linguagem, pois trata-se apenas de uma linguagem de marcaao tambm
c~ e
chamadas de tags colocadas ao longo do contedo do documento. Estas marcaoes nada mais s~o
u c~ a
do que formataoes na maneira como o contedo ser exibido pelo navegador como fontes, cores,
c~ u a
tamanho, tabelas e demais elementos presentes na pgina.
a
1.1 Pginas web
a
Um site um conjunto de pginas web, que por sua vez, s~o apenas arquivos HTML. Cada pgina
e a a a
contm diversas tags que s~o interpretadas pelos navegadores que exibem o contedo da maneira
e a u
usual. Os navegadores n~o exibem o contedo do documento HTML (fonte) diretamente, mas sim
a u
sua interpreta~o visual. Caso o usurio solicite, o cdigo fonte da pgina pode ser exibido pelo
ca a o a
navegador. Para o Firefox ou Internet Explorer, basta selecionar ExibirjCodi
8. ca~o que mostrado o
ca e
cdigo fonte da pgina.
o a
Abaixo, temos o primeiro exemplo de arquivo em HTML. Para visualiz-lo, basta salvar o con-
a
tedo mostrado na listagem 1.1 em um arquivo com a extens~o .htm ou .html e abrir com qualquer
u a
navegador instalado no computador.
1 html
2 body
3 h1 Hello , World / h1
4 p Ola Mundo / p
5 / body
6 / html
Listagem 1.1: Hello world na vers~o HTML
a
Este pequeno documento de exemplo composto por 4 tags : html, body, h1 e p. As
e
marcaoes do documento HTML s~o colocadas mescladas ao contedo. Cada marcaao interpretada
c~ a u c~ e
pelo navegador para exibir o contedo para o usurio da maneira indicada.
u a
7
10. naliza qualquer documento HTML. Todas as outras tags devem
estar entre tags html/html. Praticamente todas as tags necessitam ser fechadas com uma tag
de mesmo nome acrescida de / no incio.
O que est entre body e /body delimita o que chamado de corpo do documento, a
a e e
parte visvel ao usurio. Apenas o que est entre tags body exibido na tela do navegador ao
a a e
usurio.
a
A tag h1 formata o texto Hello, Worldcomo um cabealho de n 1 (heading ). H ainda
c vel a
outros cinco nveis formando os cabealhos h2, h3, h4, h5 e h6. Sendo h1 o
c
mais destacado e o h6 o menos destacado.
Por
11. m, a tag p delimita um pargrafo do contedo. O fechamento desta tag opcional.
a u e
Assim, pode-se remover o /p sem nenhum prejuzo exibi~o.
a ca
1.2 Ferramentas
Para visualizar arquivos simples em HTML n~o preciso nenhum software espec
12. co. Basta um editor
a e
de texto simples e o navegador para visualizar o resultado. Entretanto, a medida que a quantidade
de pginas e a complexidade aumentam, ferramentas mais adequadas podem ser utilizadas para criar
a
as pginas HTML de um site e facilitar o trabalho do desenvolvedor web.
a
Alguns exemplos de editores HTML livres s~o o Blue
13. sh e o NVu. Do lado dos proprietrios,
a a
temos o Dreamweaver, Cold Fusion e tambm o Visual Studio. Qualquer destas ferramentas atende as
e
necessidades do que ser abordado neste material, entretanto, as ferramentas livres s~o prefer
a a veis
devido a facilidade de acesso.
1.3 Atributos
As tags s~o complementadas atravs de atributos. Estes s~o pares de nome de tag e valor atribu
a e a do
que seguem a seguinte sintaxe: nome=valor. Eles s~o utilizados sempre na tag inicial e nunca no
a
fechamento. Vejamos:
a href=http://www.google.com.brBuscador/a
O atributo href indica o endereo do hiperlink. O texto entre as tags a parte exibida para o
c e
usurio, no caso, Buscador. Cada tag possui atributos espec
14. cos. Para uma refer^ncia detalhada
a e
sobre os atributos pode-se consultar a descriao completa de cada um deles consultando o endereo
c~ c
da W3 Schools.
A tag font utilizada para alterar par^metros relacionados a exibiao de fontes no navegador.
e a c~
Entretanto, o uso desta tag n~o mais recomendado no HTML 4 e foi totalmente removida no HTML
a e
5. Atualmente, a recomendaao formatar as fontes atravs de folhas de estilo CSS (Cascading Style
c~ e e
Sheets ). Assim mesmo, ainda bom um exemplo para demonstrar o uso dos atributos. Na listagem
e
1.2, observa-se que, mesmo utilizando as folhas de estilo CSS (citadas anteriormente) o resultado
obtido o mesmo.
e
1 p
2 font s i z e = 5 face = arial c olor = red
3 Este paragrafo esta em Arial , tamanho 5 e cor vermelha .
4 / font
5 / p
6
7 p
8 font s i z e = 3 face = verdana c olor = blue
9 Este paragrafo esta em Arial , tamanho 3 e cor azul .
10 / font
11 / p
Listagem 1.2: Exemplo de utiliza~o da tag font
ca
8
15. 1 p s t y l e = font - family : arial ; color : red ; font - size :20 px ;
2 Este paragrafo usa fonte Arial , tamanho 20 pixels e cor vermelha .
3 / font
4 / p
5 p s t y l e = font - family : verdana ; color :#10 A030 ; font - size :30 px ;
6 Este paragrafo usa fonte Verdana , tamanho 30 pixels e cor especificada em RGB
7 / font
8 / p
Listagem 1.3: Exemplo de formata~o de com CSS
ca
1.4 Hiperlinks, imagens e tabelas
Di
16. cilmente encontraremos um site na Internet, por mais simples que seja, sem encontrar hiperlinks,
que a ess^ncia do HTML. As imagens tambm est~o sempre presentes e as tabelas s~o fundamentais
e e e a a
para organizar e dar uma melhor organizaao ao contedo. Dominar o uso destas tags fundamental
c~ u e
para o desenvolvimento de pginas de qualquer tipo.
a
Os conhecidos hiperlinks s~o palavras ou imagens que ao serem clicadas levam a uma nova pgina
a a
ou nova se~o da mesma pgina. Ao mover o ponteiro do mouse sobre um link, o ponteiro se altera,
ca a
indicando a presena de um hiperlink. A tag a utilizada para cria~o de links em uma pgina.
c e ca a
O formato bsico :
a e
a href=urlTexto do link/a
O atributo href especi
17. ca o destino do link. Apenas o texto entre as tags exibido no navegador.
e
Outro atributo bastante utilizado target. O exemplo a seguir abre a pgina em uma nova janela:
e a
a href=http://www.google.com target=_blankBuscador/a
Para utilizar imagens nas pginas web necessrio utilizar a tag img que n~o necessita ser
a e a a
fechada. O atributo src utilizado para indicar o caminho para o arquivo que ser exibido. Caso o
e a
arquivo esteja no mesmo diretrio da pgina, basta indicar o nome. Os principais formatos utilizados
o a
s~o: JPG, GIF e PNG. O valor do atributo alt exibido quando o mouse passa sobre a
18. gura.
a e
Abaixo mostrado um exemplo do uso de img:
e
img src=boat.gif alt=Imagem de um barco
Tambm poss alterar o tamanho de exibi~o da imagem no navegador atravs dos atributos
e e vel ca e
heigth e width, conforme exemplo a seguir. Caso estes atributos n~o sejam atribu
a dos a imagem
e
mostrada em seu tamanho real,sem amplia~es ou redu~es.
co co
img src=pulpit.jpgalt=Pulpit rockwidth=304height=228
Para utilizar imagens como hyperlinks, basta substituir o texto do link entre as tags por uma tag
img. Assim, a imagem aparecer no navegador como link ao invs de texto.
a e
As tabelas s~o de
19. nidas com a tag table. Cada tabela possui linhas (tr) e clulas (td).
a e
O contedo da tabela
20. ca dentro das clulas. Pode conter texto, links, imagens, listas ou at mesmo
u e e
outras tabelas. A listagem 1.4 exempli
21. ca o uso destas tags :
1 table border = 1
2 tr
3 td linha 1, celula 1 / td
4 td linha 1, celula 2 / td
5 / tr
6 tr
7 td linha 2, celula 1 / td
8 td linha 2, celula 2 / td
9 / tr
10 / table
Listagem 1.4: Exemplo de tabela
9
22. 1.5 Formulrios
a
Formulrios s~o utilizados para passar informa~es de uma pgina a outra ou do usurio para o
a a co a a
servidor, por exemplo. Um formulrio deve conter elementos de entrada de dados como caixas
a
de texto, checkbox, bot~es de envio, listas de seleao e outros elementos dispon
o c~ veis. Para criar
um formulrio, utiliza-se a tag form que possui diversos atributos como action e name. Para
a
acrescentar elementos ao formulrio, basta acrescentar uma tag input entre as tags form,
a
segundo o exemplo a seguir.
1 form name= pesquisa
2 Primeiro Nome : input type = text name= firstname br
3 Sobrenome : input type = text name= lastname
4 input type = radio name= sex value = masculino Masculino br
5 input type = radio name= sex value = feminino Feminino br
6 Meios de Transporte que Utiliza : br
7 input type = checkbox name= vehicle value = Bicicleta Bicicleta br
8 input type = checkbox name= vehicle value = Carro Carro
9 / form
Listagem 1.5: Exemplo de formulrio com vrios elementos
a a
No exemplo anterior, o formulrio de
23. nido com o nome pesquisa, conforme o atributo presente
a e
na tag form. Em seguida, est~o presentes 6 elementos, sendo duas caixas de texto, dois bot~es
a o
de rdio e dois checkboxes, respectivamente.
a
Nas caixas de texto, o usurio pode ser inserido texto livremente. Os bot~es de rdio servem para
a o a
escolher uma opao entre vrias dispon
c~ a veis. J o checkbox, deve ser utilizado para selecionar uma
a
op~o unica dentre vrias dispon
ca a veis.
O formulrio da listagem 1.5 ainda est incompleto. Faltam alguns elementos para torn-lo
a a a
funcional. Para que isto acontea, necessrio que seja utilizado o atributo action da tag form.
c e a
Este atributo indica o arquivo ou script que ir processar os dados passados pelo formulrio.
a a
Normalmente, os scripts s~o processados no lado do servidor. O cliente (navegador) apenas envia
a
as informa~es para um servidor na Internet ou localmente para que este realize todo o processamento
co
(clculos, armazenamento, otimizaao, etc) da informa~o e devolva uma resposta ao cliente.
a c~ ca
Na listagem 1.6, o valor de action=html_form_action.php indica que este script em linguagem
PHP realizar o processamento do formulrio. Tambm foi acrescentado o bot~o submit para enviar
a a e a
os dados do formulrio para o arquivo indicado em action para processamento.
a
1 form name= pesquisa action = html_form_action . php method = get
2 Primeiro Nome : input type = text name= firstname br
3 Sobrenome : input type = text name= lastname
4 input type = radio name= sex value = masculino Masculino br
5 input type = radio name= sex value = feminino Feminino br
6 Meios de Transporte que Utiliza : br
7 input type = checkbox name= vehicle value = Bicicleta Bicicleta br
8 input type = checkbox name= vehicle value = Carro Carro br
9 input type = submit value = Enviar
10 / form
Listagem 1.6: Formulrio com bot~o de envio e action
a a
10
24. 1.6 Exerc
cios
1. Utilizando uma das ferramentas indicadas na seao 1.2, crie uma pgina web pessoal (eu.html)
c~ a
contendo alguns de seus dados pessoais, como nome, cidade onde nasceu, data de nascimento
e informaoes similares. Utilize tags p para inserir um ou mais pargrafos com essas infor-
c~ a
ma~es.
co
2. No exerc do tem anterior, acrescente uma foto sua ao arquivo.
cio
3. Ainda com relaao ao exerc 1, acrescente, no
25. nal do arquivo, links para tr^s sites externos
c~ cio e
com um texto em destaque Links Recomendados.
4. Ao
26. nal dos exerc
cios anteriores sua pgina deve ter uma apar^ncia semelhante a
27. gura 1.1.
a e
Figura 1.1: Screenshot de uma pgina em HTML
a
5. Crie um arquivo html (tabela.html) que contenha as informaoes mostradas na tabela 5. Utilize
c~
a tag table e demais tags relacionadas (tr, td, etc).
tem
descri~o
ca quantidade
1 Notebook 2
2 Processador 10
3 Mouse 5
4 Monitor 11
Tabela 1.1: Lista de preos
c
6. As tabelas podem ser utilizadas para organizar informaoes em uma pgina como pedido no
c~ a
exerccio 5. Outra utilidade das tabelas que permitem organizar a disposiao dos elementos
e c~
de uma pgina. O cdigo HTML, mostrado na listagem 1.7, exempli
28. ca essa idia. Salve o
a o e
cdigo em um arquivo e visualize o resultado no navegador.
o
11
29. 1 html
2 head
3 t i t l e Machado de Assis / t i t l e
4 / head
5 body
6 h1 Machado de Assis / h1
7 table
8 tr
9 td img src = ../ figs / machado . jpg width = 200 height = 246 / td
10 td p b Joaquim Maria Machado de Assis / b , nascido no Rio de Janeiro
11 em 21 de Junho de 1839. br
12 Considerado o grande nome da literatura nacional . / p
13 p Nascido no morro do Livramento no Rio de Janeiro , de familia pobre ,
14 estudou em escolas publicas e nunca frequentou a universidade . / p
15 / td
16 / tr
17 tr
18 td nbsp ; / td
19 td h3 Links Recomendados / h3
20 a href = www . machadodeassis . org . br / Academia Brasileira de Letras / a br
21 a href = http :// machado . mec . gov . br / Obra Completa - MEC / a br
22 / td
23 / tr
24 / table
25 / body
26 / html
Listagem 1.7: Exemplo do uso de tabelas para organizar os elementos da pgina
a
7. Modi
30. que o cdigo mostrada na listagem 1.7 para que a imagem seja exibida no lado direito
o
ao invs do lado esquerdo. Pesquise na internet como modi
31. car a cor de fundo de uma tabela
e
e aplique nesta pgina.
a
8. Crie uma pgina para o cadastramento (form.html) de um usurio na intranet de uma empresa.
a a
O formulrio deve conter os campos: nome completo, setor (compras, vendas ou
32. nanceiro),
a
nome do usurio e senha.
a
9. Dada a tag body mostrada abaixo, pesquise para que servem os atributos BGCOLOR,
TEXT, LINK, ALINK e VLINK. Aplique-os na pgina do exerc 1.
a cio
body bgcolor=#rrggbb text=#rrggbb link=#rrggbb
alink=#rrggbb VLINK=#rrggbb
10. Diferencie os termos pginas estticas e pginas din^micas relacionados a construao de
a a a a c~
sites em geral.
12
33. Cap
tulo 2
Comeando em PHP
c
Estamos irrevogavelmente em um caminho que nos levar as estrelas.
a
A n~o ser que, por uma monstruosa capitulaao ao egosmo e estupidez,
a c~ a
acabemos nos destruindo.
Carl Sagan
Os iniciantes em desenvolvimento para web ou em tecnologia da informaao n~o devem se assustar
c~ a
com a quantidade de acr^nimos (siglas) existentes. ASP, CGI, SOAP, XML e HTTP s~o alguns
o a
deles. A lista pode ser acrescida de vrios outros
a tens e pode parecer interminvel assustando os
a
menos experientes no assunto. Assim, para desenvolver um site com qualidade e principalmente com
funcionalidade um tem indispensvel na lista, a linguagem de scripts PHP.
e a
2.1 Mais um acr^nimo
o
O PHP uma linguagem de programaao voltada para web bastante conhecida. Trata-se da unica
e c~
linguagem de scripts baseada em servidor que possui cdigo aberto. E
o bastante
exvel e fcil de
a
aprender. Pesquisas mostram que milh~es de websites utilizam a linguagem PHP como base para
o
suas aplica~es. A raz~o para isso a grande capacidade do PHP, uma linguagem poderosa, fcil de
co a e e a
usar e aprender alm de ser livre. Alm de ser extremamente robusta e escalvel, pode ser utlizada
e e a
em aplicaoes de alta demanda com boas respostas. Possui suporte a diversos bancos de dados, a
c~
XML, permite a cria~o de frameworks do prprio programador e ainda excelente documentaao.
ca o c~
Como se todas estas vantagens n~o fossem su
34. cientes ainda gratuita.
a e
2.2 O ambiente de desenvolvimento
Para que o PHP funcione, necessrio combin-lo com um servidor web, tipicamente o Apache. As
e a a
requisic~es a scripts feitas pelo usurio ou aplicaao s~o recebidas pelo servidor web e manipuladas
o a c~ a
pelo interpretador PHP. O resultado obtido depois da execuao devolvido ao servidor web que
c~ e
c~ e
transmite a informaao para o cliente (navegador). O script o programa propriamente dito. E onde
est escrito o cdigo da aplica~o que funciona na Internet. Nele, poss fazer clculos, processar
a o ca e vel a
entradas do usurio, interagir com bancos de dados, ler e escrever em arquivos e tudo mais que uma
a
linguagem de programa~o capaz de realizar.
ca e
As atividades propostas neste material foram implementadas utilizando o PHP juntamente com
o servidor web Apache no sistema operacional Linux. Essa a combinaao de ferramentas mais
e c~
comum para utilizar o PHP. Entretanto, existem vers~es tanto do PHP quanto do Apache para
o
outros sistemas operacionais como Windows e MacOS. Instru~es detalhadas sobre a instalaao e
co c~
preparaao do ambiente de desenvolvimento para cada plataforma podem ser encontradas no manual
c~
do PHP dispon no endereo:
vel c
13
35. http://www.php.net/manual/pt BR/install.php
.
2.3 Iniciando
A maneira mais simples de programar em PHP embutir o cdigo da linguagem dentro de um arquivo
e o
contendo tags HTML. O cdigo embutido nas pginas executado quando a pgina carregada.
o a e a e
Os comandos da linguagem PHP devem estar sempre entre tags espec
36. cas indicando ao Apache
que os comandos entre estas tags devem ser processados pelo interpretador PHP. Observar a listagem
2.1.
1 ? php
2
3 comandos PHP
4
5 ?
Listagem 2.1: Tags da linguagem PHP
Um exemplo simples de como os comandos PHP s~o colocados junto com HTML mostrado na
a e
listagem 2.2.
1 html
2 head
3 title Matrix / title
4 / head
5 body
6
7 Agente : Quem voce pensa que e?
8 br
9
10 ? php
11 // saida mostrada
12 echo ' Neo : Eu sou Neo , mas me chamam de o escolhido . ';
13 ?
14
15 / body
16 / html
Listagem 2.2: PHP e HTML juntos
Executando-se o cdigo mostrado na listagem 2.2 e abrindo o cdigo HTML lido pelo navegador
o o
possvel observar que as tags PHP n~o est~o presentes. O que aconteceu? Quando a pgina req-
e a a a e
uisitada ao servidor web (Apache) pelo ciente web (navegador) esta interpretada pelo interpretador
e
PHP presente no servidor, que por sua vez, repassa o resultado na forma de um arquivo HTML que
e a
visualizado pelo navegador. Este processo est ilustrado na
38. gura ilustra o caso tpico de um servidor que est sendo acessado atravs de uma rede interna ou
a e
da prpria Internet. O que pode ser chamado um ambiente de produ~o. O que quer dizer que os
o ca
elementos est~o interagindo em um sistema real, em pleno funcionamento.
a
Em oposi~o a um sistema de produ~o, temos os sitemas de teste ou desenvolvimento em que,
ca ca
normalmente, todos os elementos citados anteriormente funcionam em uma unica mquina, conforme
a
ilustrado na
40. ca~es antes de serem colocadas
a co
em funcionamento no servidor de produao e tambm para aprendizagem e estudos. Na
41. gura 2.2,
c~ e
s~o mostrados dois processos: o cliente (navegador) e o servidor web. A troca de informaoes entre
a c~
eles se d atravs da interface de rede local ao invs da Internet que normalmente usada em um
a e e e
sistema de produ~o. Desta maneira, n~o necessrio um servidor externo para aprendizagem ou
ca a e a
testes. Todas os processos envolvidos (navegador e servidor web) est~o rodando na mesma mquina.
a a
Para inserir comentrios ao longo no cdigo fonte em PHP, existem duas op~es. Comentrios
a o co a
de apenas uma linha basta acrescentar //. J os comentrios de vrias linhas s~o iniciados com /* e
a a a a
14
42. Figura 2.1: Intera~o entre cliente e servidor web com suporte a PHP
ca
Figura 2.2: Sistema de desenvolvimento t
pico utilizando apenas uma mquina
a
43. nalizados com */. As linhas em branco s~o ignoradas, assim como qualquer caractere fora das tags.
a
Os comentrios seguem o mesmo padr~o da linguagem C, que alis a base do PHP. Nos exemplos
a a a e
mostrados neste material, pode-se observar muitas semelhanas entre a sintaxe utilizada em ambas
c
as linguagens.
1 ? php
2
3 // comentario de linha unica
4
5 /* comentario
6 de multiplas
7 linhas */
8 ?
Listagem 2.3: Comentrios em PHP
a
2.4 Variveis
a
Assim como qualquer outra linguagem de programaao, o PHP tambm utiliza-se de variveis para
c~ e a
armazenar dados durante a execu~o de um script. Armazernam dados numricos e n~o numricos.
ca e a e
Seu contedo pode mudar ao longo da execuao do script. Podem ser comparadas e o resultado das
u c~
compara~es pode ser utilizado para disparar a~es espec
44. cas como em qualquer outra linguagem.
co co
15
45. PHP suporta uma grande quantidade de tipos de variveis: inteiros, ponto
utuante, strings e
a
matrizes. Na grande maioria das linguagens, fundamental especi
46. car o tipo de varivel que est
e a a
sendo utilizada logo no incio do programa. O que conhecido como declaraao de variveis. No caso
e c~ a
da linguagem PHP, o prprio interpretador determina o tipo de varivel atravs do contexto em que
o a e
utilizada. Inclusive, uma varivel pode ser tratada inicialmente como inteiro e durante a execu~o
e a ca
passar a ser tratada como string. Isto, traz bastante
exibilidade no uso de variveis e conforto para
a
o programador que n~o necessita preocupar-se com a declara~o das mesmas.
a ca
Cada varivel deve ser identi
47. cada por um nome. O nome de uma varivel precedido por $ e
a a e
seguido por letra ou . S~o exemplos de nomes de variveis vlidos: $popeye, $one e $INCOME. J
a a a a
os nomes $48hrs e $123 n~o s~o vlidos. Os nomes tambm s~o sens
a a a e a veis ao caso, logo $me diferente
e
de $ME.
Na listagem 2.4, mostrado um exemplo simples de utilizaao de variveis em PHP. As variveis
e c~ a a
$name, $rank e $serialNumber s~o de
48. nidas como string e como nmero, mas s~o utilizadas como
a u a
string na chamada da funao echo(). Assim, como printf(), echo() utilizada para exibir dados
c~ e
na sada padr~o. Na chamada da funao echo(), ainda foram includas tags HTML que ser~o
a c~ a
processadas pelo navegador.
1 html
2 head
3 title Matrix / title
4 / head
5 body
6
7 Agente : Quem voce pensa que e?
8 br
9
10 ? php
11 // define as variaveis
12 $name = ' Neo ';
13 $rank = ' Anomalia ';
14 $serialNumber = 1;
15
16 // imprime saida
17 echo Neo : Eu sou b $name /b , o b $rank / b .
18 Qual meu numero de serie , b $serialNumber / b . ;
19 ?
20
21 / body
22 / html
Listagem 2.4: Variveis em PHP
a
Para atribuir valor a uma varivel basta utilizar o sinal a direita do nome da varivel seguido do
a a
valor que deseja-se atribuir, conforme mostrado a seguir.
1 ? php
2
3 $old = 1;
4 $age = $old + 15;
5 $angle1 = $angle2 = $angle3 = 60;
6
7 ?
Listagem 2.5: Atribuiao em PHP
c~
Os principais tipos de variveis disponveis em PHP s~o:
a a
Booleano (bool)
Inteiro (int)
Ponto
utuante (
oat)
16
50. car uma varivel como boolena basta atribuir as palavras-chave TRUE ou FALSE.
a
o tipo de dado mais simples. Expressa um valor verdade. Tambm s~o considerados falsos o valor
E e a
0 (inteiro), 0.0 (ponto
utuante), string vazia e um array sem elementos.
Os nmeros inteiros s~o compostos pelo conjunto Z = f::: 2; 1; 0; 1; 2; :::g. Podem ser especi-
u a
51. cados em base decimal, hexadecimal ou octal. Em octal necessrio preceder o nmero com 0. J
e a u a
em hexadecimal necessrio preceder por 0x.
e a
Os nmeros em ponto
utuante s~o os chamados nmeros reais. Utiliza-se o ponto para separar
u a u
a parte inteira da parte n~o inteira ($a = 1.234). Tambm pode-se utilizar a nota~o cient
a e ca
52. ca ($a
= 1.23e4 ou $b = 7E-10).
Uma string especi
53. cada utilizando-se aspas simples ($nome = 'maria') ou aspas duplas ($palavra
e
= word). Porm, no caso de aspas duplas, se uma varivel colocada entre as aspas o seu valor
e a e e
substitudo.
Um array em PHP considerado um mapa ordenado, ou seja, um tipo que relaciona valores
e e
para chaves. Este tipo otimizado de vrias maneiras, assim, possvel us-lo como um array real,
e a e a
ou uma lista (vetor), hashtable (que uma implementa~o de mapa), dicionrio, coleao, pilha,
54. la
e ca a c~
e provavelmente o que mais a criatividade do programador alcanar.c
Um array contm um certo nmero de pares, separados por vrgula, chave=valor. A chave
e u
pode ser tanto um inteiro quanto uma string. Na listagem 2.6 mostrado um exemplo de utilizaao
e c~
deste tipo.
1 ? php
2 $arr = array ( foo = bar , 12 = true );
3
4 echo $arr [ foo ]; // bar
5 echo $arr [12]; // 1
6 /$
7 ?
Listagem 2.6: Atribuiao de arrays em PHP
c~
2.5 Operadores
A melhor maneira de se familiarizar com os operadores disponveis em uma linguagem utilizando-os.
e
A seguir seguem exemplos de utilizaao de diversos operadores suportados pelo PHP.
c~
1 html
2 head
3 / head
4 body
5 ? php
6 // atribui valor a quantity
7 $quantity = 1000;
8 // atribui valor a preco original e preco corrente
9 $origPrice = 100;
10 $currPrice = 25;
11 // calcula a diferenca de precos
12 $diffPrice = $currPrice - $origPrice ;
13 // calcula a percetagem
14 $diffPricePercent = (( $currPrice - $origPrice ) * 100)/ $origPrice ;
15 // $
16 ?
17 table border = 1 cellpadding = 5 cellspacing = 0
18 tr
19 td Quantidade / td
20 td Preco de custo / td
21 td Preco atual / td
17
55. 22 td Alteracao absoluta / td
23 td Alteracao percentual / td
24 /tr
25 tr
26 td ? php echo $quantity ? / td
27 td ? php echo $origPrice ? / td
28 td ? php echo $currPrice ? / td
29 td ? php echo $diffPrice ? / td
30 td ? php echo $diffPricePercent ? Percentual / td
31 /tr
32 / table
33 / body
34 / html
Listagem 2.7: Principais operadores em PHP
O PHP tambm disponibiliza operadores bastante uteis para realizar operaoes com strings. A
e c~
concatenaao de strings feita com o operador (.). A listagem 2.8 exempli
56. ca a concatena~o de
c~ e ca
strings utilizando esse operador.
1 ? php
2 // algumas strings
3 $a = ' os ';
4 $b = ' jogos ';
5 $c = ' iniciam ';
6 $d = ' agora ';
7
8 // os valores sao combinados
9 // e retornado 'os jogos iniciam agora br '
10 $statement = $a . ' '. $b . ' '. $c . ' '. $d . ' br / ';
11 print $statement ;
12
13 // outra variacao ' iniciam os jogos agora !'
14 $command = $c . ' '. $a . ' '. $b . ' '. $d . '! ';
15 print $command ;
16 ?
Listagem 2.8: Outros operadores uteis em PHP
2.6 Formulrios
a
O que torna o PHP uma linguagem para web sua caracter
e stica prpria de receber entradas do
o
usurio a partir de um formulrio de uma pgina web e converter os dados passados em variveis.
a a a a
O uso de formulrios a maneira mais natural e simples de interagir com pginas web. Permite
a e a
a interaao entre clientes e fornecedores atravs de toda o tipo de aplica~es bastante conhecida na
c~ e co
web. Comrcio eletr^nico e transaoes bancrias s~o alguns dos exemplos de aplica~es tpicas e todas
e o c~ a a co
elas utilizam-se de formulrios para passar informaoes. O PHP bastante agil no recebimento das
a c~ e
informaoes passadas pelos clientes (navegadores) e process-las no servidor web.
c~ a
A popularizaao da Internet tornou os navegadores a ferramenta mais prtica para os usurios
c~ a a
interagirem as aplicaoes disponibilizadas pelas empresas e institui~es. Flexibilizou o acesso aos
c~ co
aplicativos, dispensando a necessidade de distribuiao de arquivos executveis, j que as aplicaoes
c~ a a c~
est~o dispon
a veis em sites. A manuten~o centralizada tirando do usurio o trabalho de atualizar
ca e a
o software instalado em sua mquina.
a
A seguir, temos o primeiro exemplo de uma aplica~o em que s~o passados dados atravs de
ca a e
um formulrio para ser processado por um script em PHP. O exemplo composto de basicamente
a e
de dois scripts, o primeiro contm o formulrio HTML (form.html) e o segundo contm a lgica de
e a e o
processamento (message.php).
18
57. 1 html
2 head / head
3 body
4 form action = message . php method = post
5 Entre sua mensagem : input type = text name = msg size = 30
6 input type = submit value = Enviar
7 / form
8 / body
9 / html
Listagem 2.9: form.html
O atributo action da tag form especi
58. ca o nome do script do lado do servidor (server-side
script ) que ser utilizado no processamento dos dados passados no formulrio. O segundo atributo
a a
method especi
59. ca a maneira como os dados ser~o passados. O HTTP disp~e basicamente de dois
a o
mtodos bsicos para trocar informa~es com formulrios: GET e POST. Mais detalhes sobre esses
e a co a
mtodos s~o apresentados na se~o 2.6.1
e a ca
1 html
2 head / head
3 body
4 ? php
5 // recebe dados do formulario
6 $input = $_POST [ ' msg '];
7 // usa os dados
8 echo Voce disse : i $input /i ;
9 ?
10 / body
11 / html
12 /$
Listagem 2.10: message.php
Quando os dados s~o passados atravs de form.html e submetidos, o script message.php l^ e
a e e
exibe os dados segundo a lgica implementada. Assim, para cada formulario submetido a um script
o
PHP os pares valor-varivel est~o disponveis para uso no script atravs de uma varivel container
a a e a
especial, $ POST.
Obviamente, o PHP tambm suporta o mtodo GET. No formulrio, basta alterar o atributo
e e a
method para GET ao invs de POST. E para acessar o valor utilizar o container $ GET.
e
2.6.1 Mtodos HTTP
e
O HyperText Transfer Protocol (Protocolo de Transfer^ncia de Hipertexto - HTTP) o protocolo de
e e
comunica~o utilizado para a troca de dados entre um navegador e um servidor web. E o protocolo
ca
de comunicaao que o usurio aciona quando digita um endereo no seu navegador. A troca de
c~ a c
informaoes entre os dois processos, cliente e servidor, feita por algum mtodo disponibilizado pelo
c~ e e
HTTP. Os principais mtodos associados a transfer^ncia de dados de formulrios, s~o fundamentais:
e e a a
o mtodo GET e o mtodo POST.
e e
GET
O mtodo GET acionado por meio de um formulrio HTML atravs do atributo method=get
e e a e
includa na em uma tag form. Por meio desse mtodo, os dados constantes no formulrio s~o
e a a
primeiramente transmitidos ao processo servidor e este, por sua vez, armazena os dados temporari-
amente numa varivel de contexto denominada QUERY STRING (ver seao 2.6.2).
a c~
Quando um formulrio HTML utiliza o mtodo GET, o
uxo de dados separado do endereo
a e e c
URL que chama o script atravs de um ponto de interroga~o (?). Esta forma de endereamento e
e ca c
separa~o pode ser observada no campo de endereos do navegador do usurio, logo aps o formulrio
ca c a o a
ter sido enviado, como mostrado a seguir.
texttt{http://www.meusite.com/meuscript.cgi?nome=Mariaid=123}
19
60. POST
O mtodo POST selecionado de forma similar ao GET no formulrio, atravs do atributo method.
e e a e
Faz com que os dados do formulrio sejam diretamente transmitidos ao endereo que constar no
a c
atributo action. Um script, chamado por action, precisa extrair os dados atravs da entrada
e
padr~o (standart input ) para poder obter os dados transmitidos pelo formulrio. O contedo das
a a u
variveis do formulrio n~o
61. ca exposto no campo de endereo do navegador. O que considerado
a a a c e
uma forma insegura de trocar informaoes na Internet, por exemplo.
c~
Normalmente, as aplica~es web utilizam este mtodo para trafegar os dados, justamente devido
co e
a esse fragilidade do mtodo GET.
e
2.6.2 Query string
Uma maneira alternativa de passar dados de uma pgina para outra atravs do prprio campo
a e e o
de endereo do navegador (URL). Esta forma de passar dados entre as pginas conhecida como
c a e
Querystring. Est estruturada da seguinte forma:
a
http://servidor/pagina.html?var1=dado1var2=dado2var3=dado3
Aps o sinal de ? inicia-se a sequ^ncia de nomes de variveis seguido do sinal de = e os respectivos
o e a
valores das variveis. N~o pode haver espao em branco nesta sequ^ncia. Para valores de strings que
a a c e
contenham espaos em branco necessrio substitu-los pelo sinal +. Os pares varivel/valor s~o
c e a a a
separados .
A listagem 2.11 exempli
62. ca o uso de querystring. Salve o contedo em um arquivo PHP de nome
u
qse.php no diretrio padr~o do Apache e digite no campo de endereo do navegador a seguinte URL.
o a c
http://localhost/qse.php?nome=anaidade=12
1 ? php
2 $nome = $_REQUEST [ ' nome '];
3 $idade = $_REQUEST [ ' idade ' ];
4
5 echo $nome . tem . $idade . anos de idade ;
6 ?
Listagem 2.11: Exemplo de script que utiliza query string
2.7 Comparando
Para agregar um pouco de intelig^ncia aos scripts necessrio utilizar declaraoes condicionais, ou
e e a c~
seja, fazer com que o script desempenhe a~es baseadas no resultado de um teste de comparaao.
co c~
Alguns operadores espec
63. cos para compara~o podem ser utilizados. Na listagem 2.12 s~o
ca a
mostrados alguns deles.
1 ? php
2 /* define duas variaveis */
3 $str = ' 10 ';
4 $int = 10;
5
6 /* retorna true , desde que ambas contenham o mesmo valor */
7 $result = ( $str == $int );
8 print resultado e $result br ;
9
10 /* retorna false , desde que as variaveis nao sejam do mesmo tipo , mesmo contendo o mesmo
11 $result = ( $str === $int );
12 print resultado e $result br ;
13
14 /* returna true , desde que as variaveis tenham mesmo valor e tipo */
15 $anotherInt = 10;
20
64. 16 $result = ( $anotherInt === $int );
17 print resultado e $result ;
18 /$
19 ?
Listagem 2.12: Operadores de comparaao
c~
Tambm est~o dispon
e a veis no PHP os operadores lgicos: AND, OR, XOR e NOT. O uso destes
o
operadores ilustrado na listagem 2.13.
e
1 ? php
2 /* definicao de variaveis */
3 $auth = 1;
4 $status = 1;
5 $role = 4;
6
7 /* AND logico returna true se todas as condicoes sao true */
8 // returna true
9 $result = (( $auth == 1) ( $status != 0));
10 print resultado e $result br ;
11
12 /* OR logico returna true se alguma condicao e true */
13 // returna true
14 $result = (( $status == 1) || ( $role = 2));
15 print resultado e $result br ;
16
17 /* NOT logico returna true se a condicao e false e vice - versa */
18 // returna false
19 $result = !( $status == 1);
20 print result is $result br ;
21
22 // XOR logico returna true se nenhuma das duas condicoes sao true , ou
23 // returna false se ambas condicoes sao true
24 $result = (( $status == 1) xor ( $auth == 1));
25 print resultado e $result br ;
Listagem 2.13: Operadores lgicos em PHP
o
2.8 Controle de
uxo
Em PHP a forma simples de controle de
uxo atravs da declara~o if. Seu argumento uma
e e ca e
express~o condicional, ou seja, que retorne TRUE ou FLASE. O exemplo a seguir mostra o uso de if
a
juntamente com um formulrio que ir realizar o processamento de acordo com a idade do usurio.
a a a
1 html
2 head / head
3 body
4 form action = ageist . php method = post
5 Digite sua idade : input name= age s i z e = 2
6 / form
7 / body
8 / html
Listagem 2.14: exemplo de if
A listagem 2.15 mostra o script que processa o formulrio anterior.
a
1 html
2 head / head
3 body
4 ? php
5 // retrieve form data
6 $age = $_POST [ ' age ' ];
7 // verificacao do valor
21
65. 8 if ( $age = 18) {
9 echo ' voce pode tirar carteira de motorista ! ';
10 }
11 if ( $age 18) {
12 echo voce nao pode tentar tirar carteira de motorista ainda ;
13 }
14 ?
15 / body
16 / html
Listagem 2.15: ageist.php
Alm da estrutura tradicional if-else o PHP disp~e ainda de uma estrutura especial, if-elseif-else.
e o
As listagens 2.16 e 2.17 exempli
66. cam seu uso.
1 html
2 head / head
3 body
4 h2 Today ' s Special / h2
5 p
6 form method = get action = cooking . php
7 s e l e c t name= day
8 option value = 1 Segunda / Quarta
9 option value = 2 Terca / Quinta
10 option value = 3 Sexta / Domingo
11 option value = 4 Sabado
12 / s e l e c t
13 input type = submit value = Enviar
14 / form
15 / body
16 / html
Listagem 2.16: Formulario
1 html
2 head / head
3 body
4 ? php
5 // pega selecao do formulario
6 $day = $_GET [ ' day '];
7 // checa a opcao e escolhe o item apropriado
8 if ( $day == 1) {
9 $special = ' Frango ao molho ';
10 }
11 elseif ( $day == 2) {
12 $special = ' Sopa francesa ';
13 }
14 elseif ( $day == 3) {
15 $special = ' Pure de batata e carne ';
16 }
17 else {
18 $special = ' Peixe e batatas ';
19 }
20 ?
21 h2 O cardapio de hoje e : / h2
22 ? php echo $special ; ?
23 / body
24 / html
Listagem 2.17: cooking.php
Os chamados loops tambm est~o dispon
e a veis no PHP. O mais simples deles o while. Executa
e
a~es repetidas vezes at que a condiao contida no argumento seja vlida, TRUE. A condiao
co e c~ a c~ e
avaliada no incio de cada intera~o. Dois exemplos simples e que produzem a mesma sa s~o
ca da a
mostrados a seguir.
22
67. 1 ? php
2 // exemplo 1
3 $i = 1;
4 while ( $i = 10)
5 {
6 echo $i ++;
7 }
8 // exemplo 2
9 $i = 1;
10 while ( $i = 10):
11 echo $i ;
12 $i ++;
13 endwhile ;
14 ?
15 /$
Listagem 2.18: loopsimples.php
O loop mais complexo o for. Seu funcionamento semelhante ao hom^nimo na linguagem C.
e e o
Comp~e-se de tr^s express~es. A primeira a inicializaao da varivel de controle do lao. A segunda
o e o e c~ a c
a condiao de parada. Enquanto esta condi~o for vlida os comandos contidos no for se repetem.
e c~ ca a
A terceira o incremento da varivel de controle para o prximo ciclo. A listagem 2.19 ilustra a
e a o
utiliza~o do for atravs de vrios exemplos.
ca e a
1 ? php
2 // exemplo 1
3 for ( $i = 1; $i = 10; $i ++) {
4 echo $i ;
5 }
6 // exemplo 2
7 for ( $i = 1; ; $i ++) {
8 if ( $i 10) {
9 break ;
10 }
11 echo $i ;
12 }
13 // exemplo 3
14 $i = 1;
15 for (; ; ) {
16 if ( $i 10) {
17 break ;
18 }
19 echo $i ;
20 $i ++;
21 }
22 // exemplo 4
23 for ( $i = 1 , $j = 0; $i = 10; $j += $i , print $i , $i ++);
24 ?
25 /$
Listagem 2.19: Exemplos de for
Outra estrutura de controle bastante utilizada em PHP o include, listagem ??. Esta estrutura
e
inclui e executa um determinado arquivo dentro de outro. Os arquivos s~o inclu
a dos especi
68. cando-
se seu caminho. Caso o arquivo n~o seja encontrado um warning emitido para o usurio. Se
a e a
especi
69. cado apenas o nome o arquivo procurado no diretrio corrente.
e o
Um estrutura similar o require. A diferena bsica que em caso de erro (arquivo n~o
e c a e a
encontrado, por exemplo) o script que originou a chamada require n~o continua, pois um erro fatal
a
emitido.
e
23
70. 1 vars . php
2 ? php
3 $cor = ' verde ';
4 $fruta = ' laranja ';
5 ?
6
7 teste . php
8 ? php
9 echo Uma $cor $fruta ; // Uma verde laranja
10 include ( vars . php );
11 echo Uma $cor $fruta ; // Uma laranja verde
12 ?
2.9 Fun~es
co
Durante o desenvolvimento de uma determinada aplicaao, ou mesmo dentro de um mesmo script,
c~
comum haver a necessidade de repetiao de partes do cdigo. Esta tarefa cansativa e di
71. culta
e c~ o e
a manuten~o do cdigo de aplica~es mais extensas. As linguagens de programaao modernas,
ca o co c~
disponibilizam formas de realizar o reaproveitamento de cdigo. Uma maneira de fazer isso
o e
utilizando funoes.
c~
De maneira simpli
72. cada, pode-se dizer que uma fun~o um subprograma que executa diversas
ca e
instruoes sempre que chamada. Podem ou n~o retornar valores.
c~ e a
A cria~o (de
73. ni~o) de uma funao em PHP bastante simples conforme mostrado a seguir:
ca ca c~ e
function nomefuncao(arg1, arg2, arg3)
{
comandos
}
O nome da fun~o n~o pode coincidir com nenhuma palavra reservada do PHP como nomes de
ca a
funoes j existentes. A de
74. ni~o de funoes pode estar em qualquer parte do script, mesmo aps a
c~ a ca c~ o
sua chamada. Abaixo temos um exemplo simples de uma funao do usurio que mostra o quadrado
c~ a
dos nmeros de 1 a 10.
u
1 ? php
2 echo FUNCAO DO USUARIO ;
3 quadrado ();
4 echo FIM ;
5 function quadrado ()
6 {
7 for ( $i =0; $i 10; $i ++)
8 echo O quadrado de . $i . e . ( $i * $i ) . br ;
9 }
10 ?
O fragmento de cdigo 2.9 mostra a de
75. ni~o e o uso da fun~o quadrado() criada pelo de-
o ca ca
senvolvedor. E interessante observar que n~o passado nenhum valor (argumento) para a funao,
a e c~
nenhuma informaao entre par^nteses. Outro detalhe que deve ser observado que esta funao n~o
c~ e e c~ a
retorna valores, ou seja, na chamada da funao, simplesmente o cdigo executado e o resultado
c~ o e
substitudo no local do script onde a fun~o foi chamada.
ca
Em muitas situa~es necessrio enviar um ou mais valores para uso da fun~o. Assim, uma
co e a ca
funao pode n~o ter argumentos, como no exemplo anterior, ou ter vrios argumentos declarados
c~ a a
para uso. Para isso, basta informar quais os argumentos na declaraao da funao conforme exemplo
c~ c~
2.9.
1 ? php
2 function area ($b , $h )
3 {
24
76. 4 $area = $b * $h ;
5 printf ( Area do quadrado e: % s m2 , $area );
6 }
7 echo Area do Retangulo ;
8 area (2 ,4);
9 echo FIM ;
10 ?
A fun~o area() recebe dois argumentos, $b e $h, que representam a base e a altura de um
ca
ret^ngulo. A funao recebe esses argumentos e os utiliza para calcular a area do ret^ngulo que o
a c~ a e
objetivo da fun~o. Para criar fun~es que retornem valores, basta utilizar a funao return, conforme
ca co c~
mostrado em 2.9.
1 ? php
2 function area ($b , $h )
3 {
4 $a = $b * $h ;
5 return $a ;
6 }
7 echo Area do Retangulo ;
8 $base = 2;
9 $altura = 3;
10 $area = area ( $base , $altura );
11 printf ( A area do retangulo de base %f e altura %f e % f , $base , $altura , $area );
12 ?
25
77. 2.10 Exerccios
1. Qual o mtodo HTTP recomendado para utilizaao em aplicaoes web ? Justi
78. que.
e c~ c~
2. Execute os cdigos mostrados no cap
o tulo 2. Releia as explica~es dadas e tente entender o
co
funcionamento dos scripts.
3. Escreva um formulrio que contenha dois campos: Nota 1 e Nota 2. Acrescente um bot~o de
a a
envio. Aponte o formulurio para enviar os dados para media.php, mostrado a seguir. Execute
a
o script 2.20 e observe seu funcionamento.
1 ? php
2 // media . php
3 $n1 = $_GET [ nota1 ];
4 $n2 = $_POST [ nota2 ];
5
6 $media = ( $n1 + $n2 )/2;
7 printf ( A media das notas e :% s , $media );
8 ?
Listagem 2.20: media.php
4. Sobre o exerccio anterior responda:
A varivel $media do tipo inteiro (int) ou ponto
utuante (
oat)?
a e
Como modi
79. car exibiao do valor da mdia para apenas uma casa decimal?
c~ e
Faa as adequaoes necessrias para utilizar o mtodo POST.
c c~ a e
5. Para calcular a area de um ret^ngulo basta multiplicar o valor da base (b) pela altura (h). Crie
a
um arquivo em HTML que contenha um formulrio que solicita ao usurio os valores de base
a a
e altura de um ret^ngulo e um bot~o de envio. Em seguida, escreva um script para calcular a
a a
area do ret^ngulo.
a
(Lembrete: O formulrio deve apontar para o script que realizar o processamento)
a a
6. Repita o exerccio anterior acrescentando o clculo do permetro do ret^ngulo, ou seja, a soma
a a
da medida de todos os lados.
7. A frmula para calcular a area de uma circunfer^ncia : A = £ r2 . Elaborar uma aplicaao
o e e c~
(formulrio e script ) que solicite ao usurio o valor do raio de uma circunfer^ncia e exiba o
a a e
valor da area.
8. Dado o cdigo em PHP a seguir, faa o que se pede:
o c
Pesquise o que fazem as funoes substr() e strlen();
c~
Execute o script e veri
80. que a resposta apresentada;
Refaa o script utilizando um while ao invs do for;
c e
1 ? php
2 $text = Bem vindo ao desenvolvimento em PHP ;
3 $searchchar = e ;
4 $count = 0 ;
5
6 for ( $i =0; $i strlen ( $text ); $i = $i +1)
7 {
8 if ( substr ( $text , $i ,1)== $searchchar )
9 $count = $count +1;
10 }
11
12 echo $count ;
13 ?
Listagem 2.21: countchar.php
26
82. que o cdigo mostrado na listagem 2.11 de forma que caso n~o sejam passados os valores
o a
das variveis nome e idade seja exibida uma mensagem explicativa ao usurio. Caso contrrio,
a a a
a mensagem informando o nome e a idade mostrada.
e
10. Faa uma pesquisa para determinar a utilidade da fun~o phpinfo(). Em seguida, escreva um
c ca
script que utilize esta funao, execute-o e veja o resultado.
c~
11. Na quest~o anterior, o que acontece quando o valor passado em nome ana silvaao invs de
a e e
ana? Como evitar o truncamento dos dados ao utilizar query strings ?
12. Criar um script que exiba informa~es sobre a mquina em que est sendo executado o sistema,
co a a
como nome do servidor, endereo IP, a porta e o qual o servidor web.
c
(Sugest~o: Pesquise sobre o container $ SERVER, semelhante a $ GET e $ POST)
a
27
84. Cap
tulo 3
Coisas Importantes em PHP
Educai as crianas, para que n~o seja necessrio punir os homens.
c a a
Pitgoras
a
No captulo anterior, foi feita uma apresentaao geral sobre a linguagem PHP e sua din^mica
c~ a
bsica de funcionamento atravs do uso de formulrios e dos arrays $_GET e $_POST, tambm con-
a e a e
hecidos como arrays superglobais. Porm, o uso dos valores contidos nesses arrays existe apenas
e
para o script na qual os dados foram diretamente repassados. Na maioria das vezes os valores das
ca a
variveis devem permanecer existindo durante a execu~o de vrios scripts. E o caso de aplicaoes
a c~
acessveis apenas a certos usurios, ou seja, que necessitam de autenticaao, por exemplo. Os cookies
a c~
podem ser utilizados para esta tarefa. O que chamado de persist^ncia dos dados. O PHP oferece
e e
ainda o recurso de sess~es que uma alternativa mais moderna do que os cookies.
o e
Neste captulo, ser apresentado o uso de ambas as tcnicas. Na ultima parte do captulo ser
a e a
abordado ainda o uso de bancos de dados como ferramenta auxiliar, uma vez que a persist^ncia de
e
dados tambm uma caracterstica fundamental em aplicaoes web em geral.
e e c~
3.1 Por que cookies ou sess~es?
o
Quando se acessa uma pgina web, a comunicaao entre o navegador e o servidor web feita atravs do
a c~ e e
protocolo HTTP (Hypertext Transfer Protocol ). A quest~o que o HTTP n~o armazena informaoes
a e a c~
de estado, ou seja, os dados enviados para atender uma requisiao do cliente n~o s~o mantidos quando
c~ a a
uma nova requisiao feita, inviabilizando o armazenamento de informaoes enviadas anteriormente.
c~ e c~
Por exemplo, se dois usurios acessam a pgina teste.html n~o possvel para o servidor deter-
a a a e
minar qual dos usurios realizou o acesso. As requisi~es s~o tratadas independentemente. Sim-
a co a
plesmente, o Apache atende as duas requisi~es. Assim, mecanismos como cookies e sess~es s~o
co o a
fundamentais para o desenvolvimento de aplicaoes como comrcio eletr^nico, exibiao de anncios
c~ e o c~ u
e personaliza~o de pginas em geral. S~o as chamadas pginas din^micas. Diferentemente das pgi-
ca a a a a a
nas estticas que utilizam puramente o HTML, ou seja, o mesmo contedo sempre exibido para
a u e
qualquer usurio que requisite a pgina.
a a
3.2 Cookies
Cookies s~o apenas arquivos texto armazenados localmente na mquina do cliente web para posteri-
a a
ormente serem recuperados pelo servidor. E composto por um nome para servir como referencia e um
valor associado a esse nome. Qualquer aplica~o que necessite compartilhar dados entre diferentes
ca
pginas pode ser implementada utilizando os cookies.
a
Um exemplo muito simples do uso de cookies a contagem de acessos. Supondo que um usurio
e a
acessa um site pela primeira vez e que um cookie de
85. nido com o nome numero_acessos e com valor
e
29
86. inicial 1. No prximo acesso, o valor incrementado e assim sucessivamente. O servidor resgata esse
o e
valor na mquina do cliente e pode utilizar a informaao para exibir algo como:
a c~
Este e seu acesso nmero 2
u
Outro exemplo que pode ser citado quando s~o feitas buscas em um site. O termo pesquisado
e a
pode ser armazenado em um cookie de forma que em acessos futuros o termo pesquisado j seja a
preenchido no campo do formulrio.
a
Os cookies tambm possuem uma caracterstica interessante chamada de validade, ou seja, o
e
tempo que permanecer armazenado na mquina do usurio. A validade de um cookie pode chegar
a a a
a dias ou pode ser con
87. gurado para ter tempo de vida de apenas alguns minutos.
Existe uma discuss~o em torno do uso de cookies com rela~o a privacidade. Isso ocorre porque
a ca
muitas vezes o usurio pode estar tendo informa~es gravadas em cookies e estas informaoes serem
a co c~
utilizadas por empresas para rastrear os sites pela qual o usurio navegou, por exemplo. Por isso, os
a
navegadores permitem ao usurio habilitar ou desabilitar o armazenamento de cookies na mquina.
a a
Entretanto, ao desabilitar este recurso di
88. cilmente pode-se obter os mesmos recursos disponibilizados
pelo site. Provalmente, n~o ser possvel realizar o login ou registrar a cidade em que o usurio se
a a a
encontra e coisas do tipo.
3.3 Enviando cookies
O PHP disponibiliza a fun~o setcookie() para enviar cookies para a mquina do usurio. Esta
ca a a
funao possui dupla funcionalidade, tanto serve para de
89. nir como para excluir um cookie. A sintaxe
c~
bsica da funao a seguinte:
a c~ e
bool setcookie(string nome [, string valor [,int validade [, string caminho [,
string domnio [, int seguro]]]]])
Par^metro Descri~o
a ca
nome Indica o nome que ser usado como refer^ncia
a e
valor Valor atribu ao cookie. Se vazio o cookie exclu
do e do
validade De
90. ne o tempo de validade do cookie no formato de tempo UNIX
caminho Caminho no servidor para o qual o cookie estar disponvel
a
domnio
Dom para o qual o cookie est disponvel
nio a
seguro Valor (0 ou 1) que indica se o cookie seguro
e
Para de
91. nir um cookie, necessrio atribuir um valor. Caso contrrio, o cookie excludo. Assim,
e a a e
a de
92. ni~o de um cookie feita assim:
ca e
setcookie (nome, Ana)
E a exclus~o dessa forma:
a
setcookie (nome).
Para criar um cookie vlido por dois dias basta com auxlio de time(),
a
setcookie (nome, Ana,time()+172800).
O valor de 172800 equivalente a quantidade de segundos em 48 horas. Acrescentadando esse valor
e
ao tempo atual retornado por time() temos a validade do cookie de
93. nida para o perodo de 2 dias.
Um detalhe importante quando se est utilizando cookies que seu envio deve ocorrer antes que
a e
qualquer tag HTML. Caso o cookie seja enviado aps as tags, uma mensagem de erro exibida
o e
informando que a funao setcookie() foi chamada aps o envio dos cabecalhos. Assim, o valor
c~ o c
n~o armazenado nem o cookie criado.
a e e
30
94. 3.4 Mais um superglobal
A funao setcookie() realiza o tarefa de enviar um cookie para o computador do usurio. Agora,
c~ a
preciso saber como utilizar os valores armazenados. E
e importante lembrar que os cookies n~o
a
poder~o ser utilizados na mesma pgina que os criou. Apenas na prxima requisiao que ser
a a o c~ e a
possvel utiliz-los.
a
A maneira recomendada de acessar os cookies atravs do array superglobal $_COOKIE, junta-
e e
mente com a chave associativa desse array. Por exemplo, se o cookie chamado nome de