Copyright 2008, 2013 da Novatec Editora Ltda.

Documentos relacionados
Sumário. Capítulo 1 Revisão de PHP Capítulo 2 Melhorando o processamento de formulários... 46

Desenvolvendo Websites com PHP

Editor: Rubens Prates PY Editoração eletrônica: Carolina Kuwabata Revisão gramatical: Patrizia Zagni Capa: Edinei Gonçalves/Carolina Kuwabata

Sumário. Capítulo 1 O que é o PHP? Capítulo 2 Instalação do PHP Capítulo 3 Noções básicas de programação... 25

Juliano Niederauer. Novatec

Criando Relatórios com PHP

Desenvolvendo Websites com PHP

Desenvolvendo Websites com PHP

Ademir C. Gabardo. Novatec

JQuery. A Biblioteca do Programador JavaScript. 3ª Edição Revisada e ampliada. Maurício Samy Silva. Novatec

Criando Aplicações PHP com. Zend e Dojo. Flávio Gomes da Silva Lisboa. Novatec

Criando Aplicações Gráficas com PHP

Lojas Virtuais com. Magento. André Nobrega Gugliotti. Novatec

Web Interativa com Ajax e PHP

2ª EDIÇÃO. André Milani. Novatec

Excel Avançado. 2ª Edição. Antonio Fernando Cinto Wilson Moraes Góes. Novatec

Faça um Site PHP 5.2 com MySQL 5.0 Comércio Eletrônico

Ricardo R. Lecheta. Novatec

Google Android para Tablets

PDF Explicado John Whitington

Google Analytics Justin Cutroni

Brandon Rhodes John Goerzen

Desenvolvimento de Grandes Aplicações Web

Adail Henrique Spínola Horst Aécio dos Santos Pires André Luis Boni Déo. Novatec

Desenvolvendo para. Windows 8. Aprenda a desenvolver aplicativos para Windows Phone 8 e Windows 8. Ricardo R. Lecheta. Novatec

Crie Seu Próprio Site

David Hows Peter Membrey Eelco Plugge

Luiz Carlos Querino Filho

Hélio Engholm Jr. Novatec

João Eriberto Mota Filho

Conteúdo Programático de PHP

Ricardo R. Lecheta. Novatec

Criando Relatórios com PHP Pablo Dall Oglio

Jonathan Stark Brian Jepson

Zend. Framework. Componentes Poderosos para PHP. Flávio Gomes da Silva Lisboa. Novatec

Programação Orientada a Objetos com PHP & MySQL Cookies e Sessões. Prof. MSc. Hugo Souza

Wilson Moraes Góes. Novatec

Paulo Strelczuk. Novatec

Novatec Editora Ltda

Novatec Editora Ltda. [2014].

Programação Web com Webdev 19 Julio Cesar Pedroso Conteúdo

Desenvolvendo Websites com PHP

William Pereira Alves

Wilson Moraes Góes. Novatec

PHP Profissional. Alexandre Altair de Melo Mauricio G. F. Nascimento

1 O PHP E A WORLD WIDE WEB

Rails 3 Básico Cloves Carneiro Jr. Rida Al Barazi

Ricardo Kléber M. Galvão. Novatec

Adrian Mejia. Novatec

Service Desk Corporativo

2ª Edição Alexandre Keller

Google Android para Tablets

como acabar com sua em apenas 140 caracteres Carolina Lima Novatec

Guia de Consulta Rápida. PHP com XML. Juliano Niederauer. Terceira Edição. Novatec

PROJETO PEDAGÓGICO DE CURSOS

Desenvolvimento orientado a objetos com PEAR: DB/MDB2, DB_DataObject, HTML_QuickForm e DB_DataObjectFormBuilder

Camila Porto. Novatec

Julia Elman e Mark Lavin. Novatec

Padrões de Projeto em PHP

Sumário. Conteúdo Certificação OFFICE 2010

Laboratórios de Tecnologias. Cisco. em Infraestrutura de Redes. Samuel Henrique Bucke Brito. Novatec

BANCO DE DADOS CONTEÚDO INFORMÁTICA. Prof.: MARCIO HOLLWEG BANCO DE DADOS SGBD TABELA CONCEITOS BÁSICOS

Pramod J. Sadalage Martin Fowler

MARKETING DIGITAL NA ERA. Martha Gabriel CONCEITOS, PLATAFORMAS E ESTRATÉGIAS. Novatec

formação em WeB developer

Aprendendo. Unix no OS X. Mountain Lion. Mergulhando no Terminal e no Shell. Dave Taylor. Novatec

Introdução ao PHP. Prof. Késsia Marchi

marketing ágil Utilização de Metodologias Ágeis em Projetos de Marketing Michelle Accardi-Petersen Novatec

FCA - EDITORA DE INFORMÁTICA I

Murillo Lo Visco. Novatec

O curso aborda como criar sistemas com php e mysql utilizando a integração do Dreamweaver, sem a necessidade de programação.

Software Web para: Empresas, Governo, Organizações, Entidades de Classe, Sindicatos, ONG's e Profissionais Liberais

Plano de Aula - Dreamweaver CS6 - cód Horas/Aula


PRÉ-REQUISITOS CARGA-HORÁRIA A QUEM SE DESTINA:

Ademir C. Gabardo. Novatec

Josh Pauli Revisão técnica Scott White. Novatec

Ricardo Lino Olonca. Novatec

Informática Básica. Microsoft Word XP, 2003 e 2007

PHP AULA1. Prof. Msc. Hélio Esperidião

Manual de Utilização do PLONE (Gerenciador de página pessoal)

Manipulação de Dados em PHP (Visualizar, Inserir, Atualizar e Excluir) Parte 2

Versão /10. Xerox ColorQube 9301/9302/9303 Serviços de Internet

Programação Java. em Ambiente Distribuído. Ênfase no Mapeamento Objeto-Relacional com JPA, EJB e Hibernate. Douglas Rocha Mendes.

Scrum em Ação. Gerenciamento e Desenvolvimento Ágil de Projetos de Software. Andrew Pham Phuong-Van Pham. Novatec

- Clique aqui e veja o video deste curso - Clique aqui para ver as imagens deste curso

Programação WEB II. Sessions e Cookies. progweb2@thiagomiranda.net. Thiago Miranda dos Santos Souza

Voltado para novos usuários, este capítulo fornece uma instrução para edição de Leiaute do SILAS e suas funções.

Programação Web Prof. Wladimir

Apostila Oultlook 2007 Prof. Fabrício Melo

Defenda sua base com circuitos simples, Arduino e Raspberry Pi

Google Android para Tablets

Escrito por Sáb, 15 de Outubro de :19 - Última atualização Seg, 26 de Março de :32

Primeiros Passos com o Raspberry Pi

Nelson Glauber de Vasconcelos Leal

ATA - Exercícios Informática Carlos Viana Copyright. Curso Agora eu Passo - Todos os direitos reservados ao autor.

Transcrição:

4a Edição Novatec

Copyright 2008, 2013 da Novatec Editora Ltda. Todos os direitos reservados e protegidos pela Lei 9.610 de 19/02/1998. É proibida a reprodução desta obra, mesmo parcial, por qualquer processo, sem prévia autorização, por escrito, do autor e da Editora. Editor: Rubens Prates Editoração eletrônica: Carolina Kuwabata Revisão gramatical: Patrizia Zagni Capa: Edinei Gonçalves Histórico de impressões: Quarta edição ISBN 978-85-7522-386-4 Terceira edição: ISBN: 978-85-7522-165-5 Primeira/segunda edição: ISBN: 85-7522-044-6 Novatec Editora Ltda. Rua Luís Antônio dos Santos 110 02460-000 São Paulo, SP Brasil Tel.: +55 11 2959-6529 Fax: +55 11 2950-8869 Email: novatec@novatec.com.br Site: novatec.com.br Twitter: twitter.com/novateceditora Facebook: facebook.com/novatec LinkedIn: linkedin.com/in/novatec VC20131106

Sumário Agradecimentos... 15 Sobre o autor... 17 Introdução... 19 Quem deve ler este livro...20 Como este livro está organizado...20 Download do código-fonte do livro...22 Capítulo 1 Revisão de PHP... 23 Iniciando em PHP...23 Embutindo PHP na HTML...25 Exibindo a página no navegador...26 Constantes...27 Variáveis...29 Escopo das variáveis...30 Variáveis geradas dinamicamente...30 Arrays... 31 Objetos...33 Operadores...34 Aritméticos...34 Binários...35 Comparação...36 Atribuição...37 Lógicos...38 Precedência de operadores... 41 Estruturas de controle em PHP...42 if...43 switch...44 while...45 do...while...46 for...47 foreach...48 Integração com bancos de dados...49 7

8 PHP para quem conhece PHP Capítulo 2 Melhorando o processamento de formulários... 53 Criação do formulário...53 Enviando as informações para um programa PHP...56 Método GET...57 Método POST...58 Os arrays superglobais $_GET e $_POST...58 Funções especiais para formatação de dados...59 Validação no cliente com JavaScript...62 Validação no servidor com PHP...64 Espaços em branco...64 Número mínimo de caracteres...65 Campos de e-mail...65 Numéricos...67 CPF...68 CNPJ...69 Exemplo de validação de dados... 71 Capítulo 3 Mantendo informações com cookies e sessões... 77 Por que usar cookies e sessões?...77 Utilizando cookies...78 Invasão de privacidade?...79 Enviando cookies pelo PHP...80 O array superglobal $_COOKIE... 81 Autenticação de usuários...82 Criando um sistema de username/senha para seu site...83 Utilizando sessões...89 O que é uma sessão?...89 Propagando o identificador entre as páginas...90 Criando uma sessão no PHP...90 Registrando variáveis em uma sessão... 91 Parâmetros de configuração...93 Usando sessões no sistema de username/senha...94 Funções do PHP para manipulação de sessões...98 Capítulo 4 Arquivos-texto: praticidade e rapidez... 101 Por que utilizar arquivos no PHP?...101 Operando sobre arquivos... 102 Abertura... 102 Fechamento... 104 Leitura... 104 Escrita... 108

Sumário 9 Criando um contador de acessos... 109 Funções do PHP para manipulação de arquivos...110 Capítulo 5 A página envia o e mail... 119 Por que enviar e-mails com o PHP?...119 Quem envia o e-mail?... 120 Utilizando a função mail...121 Diretivas de configuração no php.ini...121 Composição de uma mensagem... 122 Adicionando informações ao cabeçalho do e-mail... 123 Enviando e-mails em formato HTML... 124 Exemplos de envio de e-mails com o PHP... 125 Coletando as sugestões de seus visitantes... 125 Mensagens para diferentes áreas da empresa... 128 Lista dos cabeçalhos de e-mail (mail headers)...131 Capítulo 6 Enviar arquivos? Faça Upload!... 133 Por que fazer upload de arquivos?... 133 Diferenças entre os protocolos HTTP e FTP... 134 Upload utilizando PHP e HTTP... 135 Definindo o formulário HTML... 136 Parâmetros de configuração do upload... 138 Recebendo e gravando o arquivo... 139 Upload utilizando PHP e FTP... 143 Definindo o formulário HTML... 143 Configuração do servidor e do upload... 144 Conectando ao servidor e enviando o arquivo... 145 Enviando múltiplos arquivos... 148 Utilizando variáveis em sequência... 148 Utilizando um array... 152 Problemas comuns... 154 Mensagens de erro... 155 Funções de FTP disponíveis no PHP... 155 Capítulo 7 A arte de gerar imagens no PHP... 161 Por que manipular imagens?...161 Introdução à biblioteca gráfica GD... 163 Tipos de imagens suportados... 163 Criando uma imagem... 164 Definindo as cores... 165 Definindo o conteúdo...166

10 PHP para quem conhece PHP Exibindo a imagem... 167 Liberando a memória utilizada... 169 Desenhando elementos gráficos básicos... 169 Linhas... 169 Retângulos...171 Polígonos... 173 Arcos... 176 Círculos e elipses... 177 Escrevendo em uma imagem...181 Usando a fonte-padrão...181 Usando fontes TrueType... 183 Exemplos de aplicações... 185 Contador de visitas gráfico... 185 Marcador de imagens para websites... 192 Miniaturas (thumbnails) de imagens... 197 Gráficos em formato de pizza...206 Gráficos de colunas...218 Gráficos de linhas...231 Funções do PHP para manipulação de imagens... 237 Capítulo 8 A versatilidade dos documentos PDF... 251 Por que criar documentos PDF?...251 Introdução à biblioteca PDFlib... 253 Formas alternativas: Haru e FPDF... 253 Criando um arquivo PDF... 254 As propriedades do documento... 255 Adicionando páginas ao documento... 255 Escolhendo o tipo e o tamanho da fonte... 257 Inserindo o conteúdo... 258 Fechando o documento e liberando a memória... 259 Definindo o destino do documento gerado... 259 Sistema de coordenadas... 261 Inserindo caixas de texto no documento... 262 Formatando o texto...265 Inserindo imagens no documento...268 Desenhando em um documento... 270 Linhas e curvas... 270 Retângulos e quadrados... 272 Círculos e arcos... 274 Definindo um modelo (template) para as páginas... 276 Inserindo referências no documento... 278 Bookmarks... 278 Weblinks... 279 Programa-exemplo com referências...280

Sumário 11 Exemplos de aplicações com a PDFlib...282 Conversor TXT para PDF...283 Relatórios PDF a partir de consultas SQL...286 Exemplos utilizando a FPDF... 293 Funções do PHP para manipulação de documentos PDF...296 Capítulo 9 Utilizando modelos: seja Smarty... 313 Por que utilizar modelos (templates)?...313 As ferramentas existentes...314 Smarty A ferramenta de modelos...314 O que é Smarty?...315 Download e instalação...316 Incluindo uma chamada para a classe...317 Estrutura da aplicação...317 Testando a ferramenta...319 Informações sobre o layout... 320 Delimitadores... 320 Comentários... 320 Funções...321 Atributos...321 Variáveis... 322 Modificadores de variáveis... 323 Arquivos de configuração... 328 Informações sobre a programação PHP... 330 A constante SMARTY_DIR... 330 Variáveis de configuração...331 Métodos... 334 Exemplos de aplicações com Smarty... 335 Catálogo de livros... 335 Sistema de notícias...340 Funções da Smarty para a criação de templates... 347 Embutidas... 347 Personalizadas... 354 Métodos da classe Smarty para o PHP...371 Capítulo 10 Acesse um banco de dados! Não importa qual... 377 Por que usar abstração de banco de dados?... 377 Bibliotecas disponíveis... 379 Extensão dbx... 379 Extensão PDO...380 Utilizando a extensão dbx...380 Instalação...380 Conectando ao banco de dados... 381

12 PHP para quem conhece PHP Executando consultas SQL...382 Manipulando os resultados da consulta...383 Encerrando a conexão...385 Exemplos utilizando dbx...385 Utilizando a extensão PDO... 397 Instalação da PDO... 397 Conectando ao banco de dados... 398 Executando comandos SQL... 399 Encerrando a conexão...400 Exemplos utilizando PDO... 401 Funções do PHP para a extensão DBX...407 Métodos da extensão PDO...408 Classe PDO...408 Classe PDOStatement... 410 Capítulo 11 Estudo de caso: controle de finanças... 415 Definição do sistema... 415 Criando a base de dados...418 Include de acesso ao banco de dados...419 Autenticação do usuário com cookies...420 Login...421 Autenticação... 422 Logout... 423 Opções do menu principal... 423 Inclusão de receitas e despesas...426 A planilha de receitas e despesas...430 Escolhendo o período de visualização...430 Exibindo a planilha... 433 Gerando um gráfico de despesas... 441 Gerando um relatório PDF para o mês...445 Enviando os dados por e-mail...449 Exclusão dos dados cadastrados... 452 Apêndice A Comandos gerais do PHP... 457 Arrays... 457 Classes e objetos...460 ClibPDF...460 Data e hora...463 dbx...464 Diretórios...465 FTP...465 Funções...466 HTTP... 467

Sumário 13 Imagens... 467 IMAP, POP3 e NNTP... 470 InterBase... 473 Matemática...474 Microsoft SQL Server... 476 msql... 477 MySQL... 478 MySQLi...480 OCI8...482 ODBC...484 Opções e informações do PHP...485 Oracle...487 PDF...488 PostgreSQL...491 Sessões...494 Sistema de arquivos (Filesystem)...495 Strings... 497 Sybase...500 URL...501 Variáveis...501 Apêndice B Novidades do PHP 5 e PHP 6... 503 O que mudou a partir do PHP 5?...503 PHP será uma linguagem orientada a objetos?...503 Compatibilidade entre as versões 4, 5 e 6...504 As principais novidades...505 Orientação a objetos...505 SQLite...513 Suporte XML...514 Outras mudanças...514 Apêndice C Links interessantes... 519 Site oficial do PHP...519 Scripts, programas e tutoriais PHP...519 Catálogos de links PHP... 520 Outros links... 520 Índice remissivo... 521