web aula 1- programacao em php

Upload: marcos-carvalho

Post on 09-Oct-2015

40 views

Category:

Documents


0 download

TRANSCRIPT

  • Viso geral

    Apresentao da disciplina:

    O PHP surgiu em meados de 1994 como um pacote de

    programa CGI com o intuito de substituir alguns

    comandos PEARL. A linguagem foi se desenvolvendo,

    novos recursos sendo criados e hoje j considerada

    uma linguagem madura e confivel utilizada em diversos

    sites com diferentes objetivos. uma das linguagens

    mais utilizadas na Web, pela sua facilidade de

    implementao, suporte a testes automatizados, open-

    source, gratuita e que conta com uma grande

    comunidade de usurios. O crescimento cada vez mais

    acelerado do mercado eletrnico e da utilizao da

    internet em geral continua exigindo mais profissionais da

    rea de tecnologia para implementar e manter solues

    on-line.

    Objetivos:

    Nesta unidade, veremos alguns dados sobre o mercado da internet atualmente, a sua evoluo e ento conheceremos as linguagem e recursos utilizados para o desenvolvimento de um sistema Web. Focaremos nossa ateno no PHP, mas tambm discutiremos assuntos muito importantes que so relacionados ao ambiente web como: HTML, CSS, JavaScript, AJAX e banco de dados.

    Contedo Programtico:

    Disciplina: PROGRAMAO EM HTML Conhecer o ambiente PHP e utilizar os comandos da

    linguagem PHP conforme a soluo web.

  • Desenvolver e manter aplicaes dinmicas para Internet com interface web, criando sites dinmicos com a linguagem PHP.

    Desenvolver scripts do lado servidor em PHP. Conhecer os conceitos, tcnicas, comandos e instrues

    no desenvolvimento de aplicaes em PHP. Reviso de Clientes/servidores/TCP Internet e Comrcio Eletrnico Programao HTML e PHP Reviso/contextualizao de programao de

    computadores / PHP

    Metodologia:

    Na unidade utilizaremos todos os recursos necessrios e disponveis para o desenvolvimento da discusso do contedo, sendo assim, faremos uso de:

    Textos da prpria web-aula e de outros sites que possam contribuir para a discusso;

    Vdeos que podem esclarecer ou aprofundar determinados contedos;

    Fruns para discusso de tpicos onde seja possvel a troca de ideias e contedos entre os discentes e docentes;

    Avaliaes virtuais onde ser realizada a verificao do aprendizado;

    Entre outros recursos que podero ser utilizados visando maior entendimento da matria.

    Avaliao Prevista:

  • Cada web-aula conter uma avaliao virtual composta

    de 5 questes (sendo assim, temos 2 web-aulas com 5

    questes cada). Quando houver frum de discusso o

    aluno ser avaliado quanto ao contedo de sua

    postagem, onde dever comentar o tpico apresentando

    respostas completas e com nvel crtico de avaliao

    pertinente ao nvel de ps-graduao.

    Critrios para Participao dos Alunos no Frum:

    Quando houver frum de discusso o aluno ser avaliado

    quanto ao contedo de sua postagem, onde dever

    comentar o tpico apresentando respostas completas e

    com nvel crtico de avaliao pertinente ao nvel de ps-

    graduao. Textos apenas concordando ou discordando

    de comentrios de outros participantes do frum sem a

    devida justificativa ou complementao no

    acrescentam em nada ao debate da disciplina, sendo

    assim, devem ser evitados. Os textos devem sempre vir

    acompanhados das justificativas para a opinio do

    discente sobre o contedo discutido, para que assim,

    possamos dar continuidade ao debate em nvel

    adequado. Alm disso, podem ser utilizados citaes de

    artigos, livros e outros recursos que fundamentem a

    opinio ou deem sustentao a sua posio crtica sobre

    o assunto. Deve ser respeitado o tpico principal do

    frum, evitando debates que no tem relao com o

    tema selecionado pelo professor.

  • E ento? Vamos entender um pouco mais sobre o universo do

    desenvolvimento Web.

    Como vimos na vdeo-aula 2, uma pgina pode conter diferentes

    linguagens, cada uma tem seu objetivo. Vamos conhec-las um pouco

    mais?

    HTML

    Farei uma breve introduo ao HTML neste curso de PHP, pois o mesmo

    essencial para compreendermos melhor este curso. Vocs tero uma

    disciplina especfica sobre HTML onde discutiro todos os detalhes,

    inovaes, etc.

    Vamos conhec-lo?

    Um documento HTML (HyperText Markup Language) um conjunto de

    instrues para definir a estrutura de pginas web. O HTML no

    considerado uma linguagem de programao, pois ela apenas define a

    apresentao do contedo. Por exemplo, com HTML no possvel criar

    estruturas tpicas de linguagens de programao como comandos IF,

    while, etc.

    Para definir a estrutura do documento, o HTML utiliza-se de tags

    (marcaes) que informam ao navegador como exibir o contedo,

    estas tags consistem do sinal ("maior que").

    De um modo geral, as tags aparecem em pares, por exemplo, Algum

    Texto. Note que o smbolo que termina uma determinada marcao

    igual aquele que a inicia, antecedido por uma barra (/). Neste exemplo,

    diz ao navegador que est sendo iniciado um novo pargrafo e indica

    que este pargrafo terminou! Alguma tags no aparecem em pares,

    como por exemplo, a tag que realiza uma quebra de linha no texto.

  • SAIBA MAIS Existem diversas marcaes (tags) HTML, para conhec-las voc pode

    acessar

    O HTML diferentemente do PHP no diferencia entre maisculas e

    minsculas (no "case sensitive"). Ento, por exemplo, a notao

    equivalente aou.

    Veja a seguir um exemplo de uma simples pgina HTML com diferentes

    tags:

    Arquivo pagina.html

    Para testar esta pagina basta abrir o bloco de notas, copiar e colar este

    contedo e ento salvar com o nome pagina.html, a s abri-la em

    seu navegador!

    CSS

    Antes de comentarmos sobre o CSS navegue por diferentes pginas

    deste linkhttp://www.mezzoblue.com/zengarden/alldesigns/. Voc percebeu que as pginas mesmo parecendo completamente diferentes,

    apresentam o mesmo contedo? Isto o CSS!

    CSS (Cascading Style Sheets Folhas de Estilos em Cascata) tem a

    finalidade de dar uma forma de apresentao ao contedo do

    documento HTML. Inicialmente as cores e tamanhos de fonte eram

  • definidos diretamente pelo HTML, assim no era possvel separar o

    contedo do documento de sua formatao. Na prtica era difcil

    realizar alteraes no layout das pginas Web, pois esta formatao

    estava misturada com o cdigo HTML. Com o CSS possvel

    modificar completamente a aparncia de um site alterando

    informaes de apenas um arquivo CSS.

    Vamos ver um exemplo! (Para simplificar a definio do CSS est na

    mesma pgina que o HTML).

    Arquivo css.html

    A estrutura de formatao de estilos CSS basicamente esta:

    A palavra seletor corresponde a quais elementos HTML sofrero as

    alteraes de layout e ento definimos qual o valor para diferentes

  • propriedades, no exemplo anterior notamos vrias formas de definir as

    cores dos contedos para diferentes tags.

    Execute o exemplo para visualizar!

    Agora que j conhecemos um pouco sobre o HTML e o CSS, para

    podermos testar as funcionalidades do PHP devemos preparar um

    ambiente para praticarmos! Vamos l?

    Instalando o MySQL , Apache e PHP

    Utilizaremos neste caso o WampServer, que instala e configura todos

    os recursos necessrios para executar nossos exemplos.

    Devemos inicialmente fazer o download do WampServer em

    , ao clicar em download

    visualizaremos as verses disponveis. Escolha a correspondente ao

    seu sistema, 32 ou 64 bits.

  • Uma nova janela ser aberta, clique ento na opo you can download it directly

  • A instalao do WampServer simples. Aps ter realizado o download,

    basta executar o aplicativo e seguir o Wizard para a instalao. A

    primeira tela a de boas-vindas, clique Next >.

    necessrio concordar com os termos de licena:

  • Agora devemos configurar a pasta onde ser instalado o programa. Se

    preferir, possvel deixar a pasta que vem pr-configurada. Ns a

    utilizaremos em nossos exemplos.

  • Aps isso, o programa perguntar se deseja criar cones na barra de

    tarefas e no desktop, escolha o de sua preferncia e clique em Next>.

    Esta tela confirma as opes selecionadas, estando tudo ok, clique

    em Install.

    Uma tela de progresso ser exibida, basta aguardar!

  • Aps instalar todos os recursos, aparecer a pergunta sobre qual

    browser ser utilizado, apenas clique em Abrir:

  • A prxima tela perguntar sobre as configuraes do PHP mail, apenas

    clique em Next>.

    Com a opo selecionada, basta clicar em Finish para finalizar o

    instalador

  • Ao finalizarmos, podemos notar que surgiu um cone no canto inferior

    direito da tela: , a cor verde indica que o servidor est online. Clicando sobre o cone, aparecem diversas opes:

    importante compreender as diferentes funcionalidades:

  • Localhost O browser padro do sistema ser aberto com a pgina inicial do WampServer

    phpMyAdmin O browser aberto no phpMyAdmin, sistema que utilizaremos para criar e gerenciar nosso banco de dados

    wwwDirectory O Explorer aberto na pasta em que devem ser colocados os arquivos .php que criaremos

    Apache Trata-se do nosso servidor web que processa as requisies PHP. Ao selecionar esta opo exibe um sub-menu para configuraes adicionais

    Exibe um sub-menu para configuraes adicionais do PHP

    MySQL Exibe um sub-menu para configuraes adicionais do banco de dados MySQL

    webGrind Executa o webGrind que permite avaliar o desempenho de nosso sistema, para saber mais acesse o site https://github.com/jokkedk/webgrind

    Start, Stop, Restart All Services

    Estas opes permitem iniciar, parar ou reiniciar todos os servios com apenas 1 clique. Utilize essa opo se for feita alguma configurao adicional, ou se encontrar problemas na execuo de algum servio

    Put Online Se o computador for reiniciado e tivermos que executar o WampServer a partir do menu Iniciar, devemos escolher esta opo para colocar o WampServer online, a cor do cone alterada de acordo com o status. Verde: online, Amarelo: em transio, Vermelho: offline.

    Para escrevermos nossos scripts PHP utilizaremos o Notepad++,

    disponvel para download em

    . Para quem no conhece, funciona como um super bloco de notas, gratuito, fcil e

    rpido para executar e utilizar. Servir muito bem para trabalharmos

    e desenvolvermos nossos scripts PHP.

    Para o desenvolvimento de sistemas mais avanados e complexos

    existem IDEs (Ambientes de Desenvolvimento Integrado), os quais

  • devidamente configurados facilitam ainda mais a programao de

    sistemas em PHP, a seguir temos uma lista com alguns exemplos:

    CodeLobster desenvolvida especialmente para criao de scripts PHP em ambiente Windows, muito leve e fcil de utilizar

    Site:

    Licena: Free, a verso comercial possui recursos adicionais

    ZendStudio - uma ferramenta completa para quem trabalha com PHP (framework adaptado sobre o Eclipse)

    Site: < http://www.zend.com/en/ >

    Licena: Trial

    Eclipse for PHP Developers - excelente ferramenta, altamente customizvel, leve e rpida. Existem outras verses do Eclipse

    adaptadas para outras linguagens, voc pode utilizar a verso padro

    e instalar um plugin para o PHP.

    Site:

    Licena: Free

    NetBeans - tima ferramenta, muito utilizada na programao Java por facilitar a criao de interfaces mais amigveis, tambm pode ser

    utilizada para o desenvolvimento de sites com PHP

    Site:

    Licena: Free

  • Para testarmos o nosso servidor web, vamos clicar no cone do

    WampServer e escolher a opo www directory. O Windows Explorer abrir como na imagem a seguir. Crie uma pasta chamada exemplos:

    Dentro dessa pasta, crie um novo documento de texto e renomeie para

    texto.php. Ateno: os arquivos com scripts PHP devem ter a extenso.php para serem processados corretamente pelo servidor

    Apache.

    Abra este arquivo com o Notepad++ (ou a ferramenta que preferir) e

    insira o cdigo a seguir:

  • Arquivo texto.php

    Neste cdigo, podemos observar a mistura de PHP com HTML. Da

    linha 1 at a linha 6, e nas linhas 14 e 15, temos apenas cdigo HTML.

    O cdigo PHP sempre declarado entre as tags , linhas 7 a 13. Neste exemplo, possvel visualizar tambm os 2 tipos de

    comentrios que podemos fazer em PHP. Na linha 11 temos o

    comando echo que permite gerar texto para ser exibido no navegador.

    Vamos testar?

    Para executar este cdigo, clique novamente no cone do WampServer

    e ento em Localhost, a seguinte tela ser exibida no navegador:

    No final da pgina, temos o ttulo Your Projects, clique na pasta exemplos, e escolha o arquivo que acabamos de criar texto.php. Outra

    forma de executar ir diretamente no navegador e digitar

    localhost/exemplos/texto.php

    O resultado ser:

  • Ao clicarmos com o boto direito do mouse e selecionarmos exibir

    cdigo fonte, veremos:

    Por que no visualizamos o cdigo em PHP?

    Nenhuma parte do script em PHP exibido no navegador. Isto porque

    o servidor l o cdigo em PHP, interpreta e gera o HTML

    correspondente, que ento enviado para o cliente, que o

    responsvel por processar e exibir o cdigo HTML.

    Variveis

    Para declarar uma varivel em PHP devemos iniciar o nome dela com

    o smbolo $, seguido por letras ou _ (underscore). A linguagem PHP

    case-sensitive, o que significa que ela diferencia letras maisculas e minsculas, por exemplo, a varivel x diferente de X.

    Vamos ver um exemplo de variveis. Crie um arquivo chamado

    variaveis.php com o cdigo:

  • Arquivo variaveis.php

    Neste script, visualizamos nas linhas 2 a 5 exemplos de atribuio de

    valores para as variveis. Nas linhas 7 e 8, temos a funo gettype que retorna o tipo da varivel que o PHP reservou para a varivel de acordo

    com o valor que ela armazena.

    Na linha 11, temos a funo is_int que testa o tipo da varivel. Similar

    a esta temos outras como is_bool, is_string e is_float.

    PARA SABER MAIS O tipo booleano no case sensitive, isto significa que para atribuir um

    valor verdadeiro, por exemplo, tanto faz utilizar True ou TRUE ou true.

    Veja agora a vdeo-aula 3 onde discutiremos um pouco mais sobre variveis!

    Array

  • utilizado para armazenar vrios elementos do mesmo tipo. Alm

    disso, podemos criar pares do tipo chave => valor, vejamos como

    funciona:

    Para definir um array somente com valores utilizamos:

    Arquivo vetor1.php

    Note que o ndice do array inicia-se em 0, por isso na linha 3 exibido

    o valor 2!

    Usando a forma chave => valor:

    Arquivo vetor2.php

    Constantes

    Para definirmos uma constante em PHP devemos utilizar a estrutura:

    Vejamos um exemplo:

  • Arquivo constante.php

    FUNO

    Para criarmos uma funo em PHP basta utilizarmos a palavra

    reservada function, segue a estrutura:

    Vejamos um exemplo:

    Arquivo funcao.php

    OBJETOS

    O PHP 5 oferece todos os recursos para o desenvolvimento de sites

    utilizando programao orientada a objetos. Vejamos o exemplo de

  • declarao de uma classe, criao de uma instncia e o acesso a

    atributos e mtodos:

    Arquivo classe.php

    SAIBA MAIS O tema Orientao a Objetos muito extenso, voc pode estudar mais

    em

    Operadores

    A tabela a seguir exibe os principais operadores utilizados em PHP, sua

    descrio e um exemplo. No decorrer do curso, veremos a utilizao

    destes operadores.

  • Estruturas de Controle

    As estruturas de controle de uma linguagem de programao permitem

    controlar o fluxo de execuo de nossos programas. Vamos ver em PHP

    como trabalhar com as estruturas condicionais (deciso) e com as

    estruturas de repetio (loop).

    IF

    A instruo if utilizada para tomada de deciso. Vejamos um exemplo:

  • Arquivo if.php

    Este cdigo mostra 3 tipos de utilizao do IF. Na linha 5, temos um

    teste que verifica se o valor da varivel a maior que b e ento exibe a mensagem. Na linha 9, temos o caminho alternativo do IF,

    representado pelo comando else, quando a condio falsa. J na linha 16, a estrutura mostra diversoselseif para testar diferentes condies e exibir a mensagem correspondente.

    Agora com voc! Altere os valores das variveis para visualizar os

    diferentes fluxos tomados pelo script.

    WHILE

    A estrutura de repetio while, assim como a estrutura if, tambm trabalha com uma condio. A diferena entre as duas que se a

    condio for verdadeira para o if, ele executa o bloco uma vez e nowhile, ele executa o bloco enquanto a condio for verdadeira. Veja o exemplo:

  • Arquivo while.php

    O bloco entre as chaves ficar executando at que a condio da linha

    3 seja falsa. Veja que na linha 5 a varivel i incrementada em uma unidade, o comando $i++ equivalente a $i = $i + 1

    FOR

    A estrutura de repetio for executar o bloco de comandos com um limite j pr-definido, vejamos sua estrutura:

    Agora um exemplo que voc poder testar:

    Arquivo for.php

    FOREACH

    Este tipo de iterao muito utilizada em PHP, um tipo de for especial usado para estruturas do tipoArray. Veja:

  • Exemplo:

    Arquivo foreach.php

    SWITCH

    Ao invs de utilizarmos sequencias de if-else podemos utilizar a

    estrutura switch quando estamos testando o valor de uma varivel,

    percebam como o cdigo utilizando switch fica bem mais claro do que

    diversos if-else:

    Arquivo switch.php

    AJAX + PHP

  • AJAX (Asynchronous JavaScript And XML) permite atualizarmos o

    contedo de uma pgina sem precisar carreg-la toda novamente!

    Vamos ver um exemplo para facilitar o entendimento do poder do

    AJAX, precisaremos de 2 pginas, crie-as e ento salve com o nome

    especificado aps o cdigo-fonte:

  • Arquivo ajax.php

    Arquivo maiuscula.php

    Abra o arquivo ajax.php em seu navegador e digite algum texto, note

    que sem recarregar toda a pgina, a cada tecla digitada o arquivo

    maiuscula.php executado e ento o texto em maisculo aparece na

    outra caixa de texto. Atualmente quase todos os sites apresentam

    contedo sendo exibido dessa forma, portanto imprescindvel que

    qualquer desenvolvedor Web tenha conhecimentos de AJAX e utilize

    estes recursos para tornar os sites mais dinmicos.

    Banco de dados

    Antes de iniciarmos a integrao do PHP com um banco de dados,

    veremos alguns comandos bsicos em SQL (Structured Query

    Language) que utilizaremos quando estivermos trabalhando com

    banco de dados. O SQL uma linguagem padro para acessar sistemas

    de gerenciamento de banco de dados relacionais: inserindo,

    atualizando, excluindo e selecionando suas informaes. Todo banco

    de dados precisa de tabelas para organizar os dados, vamos ver a

    estrutura de como criar uma:

    Exemplo:

  • Neste momento no se preocupe em testar estes scripts, mais tarde

    quando comearmos o desenvolvimento do nosso sistema veremos na

    prtica a execuo destes comandos. Preste ateno a estrutura desta

    tabela, os outros comando SQL que veremos a so baseados nesta

    estrutura.

    Agora para inserirmos registros nesta tabela devemos usar o comando

    INSERT vejamos:

    Exemplo:

    Pgina

    Perceba neste exemplo que no obrigatrio inserirmos valores em

    todos os campos da tabela, na realidade no momento que criamos a

    tabela podemos definir o que obrigatrio e o que no !

    Vamos agora atualizar estes dados, j que algumas informaes no

    foram completadas, com este objetivo devemos usar o comando

    UPDATE:

    Exemplo para atualizarmos o endereo e a cidade:

  • Para selecionarmos informaes de um banco de dados utilizamos o

    comando SELECT:

    Exemplo para selecionarmos o nome dos clientes que vivem em

    Londrina:

    Vamos agora excluir este registro, a sintaxe do comando DELETE :

    Exemplo:

    Observe que no exemplo acima utilizamos o campo nome e sobrenome

    para encontrarmos o cliente para excluso, isto muito incomum em

    sistemas reais, o que se costuma fazer buscar o cliente por um cdigo

    (identificador) que seja nico. Neste exemplo de excluso, imaginando

    que nosso sistema tenha diversos registros, ocorremos o risco excluir

    mais de um cliente, isso se o nome e sobrenome destes clientes forem

    o mesmo!

    Agora para excluir toda a tabela devemos usar o comando DROP:

    Exemplo:

  • SAIBA MAIS As variaes e combinaes deste comando so imensas, para saber

    mais voc pode acessar o site:

    < http://www.sql.org/ >.

    Discusso no Frum: Nesta unidade comentamos sobre diversos sistemas open source desenvolvidos em PHP, encontre exemplos e ento comente sobre o foco do sistema e se vivel como uma soluo a ser apresentada para um cliente?

    Pgina