PHP My SQL Jos Francisco jfpcin ufpe br
PHP & My. SQL José Francisco [jfp@cin. ufpe. br]
Os slides originais são parte do material de cursos anteriores do curso de PHP, ministrados por Sérgio Clemente. Com modificações! Também possui a contribuição de Cleviton V. F. Monteiro. Conteúdo didático é baseado em diversas fontes como: tutoriais, livros e o site oficial de PHP. Inspirado também em slides de Jobson Ronan, instrutor de Java Avançado do CITi.
Roteiro n n Servidor Web Suite Código Pontos importantes
Servidor WEB (HTTP) n “Servidor de arquivos” ¡ n n Tem como função retornar um “arquivo”. O browser se conecta ao servidor web, requisita o “arquivo” e o recebe. Tradicionalmente envia arquivos enquanto o browser tradicionalmente os recebe. ¡ Taxas de download e upload diferentes.
Servidor WEB Servidor Web Requisição de um “arquivo” Procura na pasta Cliente Retorna o “arquivo” ou uma mensagem de erro Diretório www
Requisição & Resposta n Protocolo HTTP Requisição GET /index. html HTTP/1. 1 From: sscf@cin. ufpe. br User-Agent: IE/5. 0 HTTP/1. 1 200 OK Date: Fri, 20 Apr 2004 23: 59 GMT header (metadados) Content-Type: text/html Content-Length: 1354 Resposta <html> <body> <h 1>Curso de PHP</h 1> corpo (arquivo). . . </body> </html>
Servidor WEB e PHP Servidor Cliente Requisição Não? Leia o arquivo e retorne . php? Retorne o resultado do script Interpretador PHP Interpreta o arquivo linha por linha Sim
Necessidades para rodar o PHP? n Servidor Web (Apache, IIS, . . . )* ¡ n Interpretador PHP (Atualmente na versão 5)* ¡ n http: //www. apache. org http: //www. php. net Banco de dados (My. Sql, Postgresql, Oracle, . . . ) ¡ http: //www. mysql. com
PHPDev n Tríade ¡ ¡ ¡ n Plataforma suportadas atualmente ¡ n Win 32 Página do projeto ¡ n Apache My. Sql PHP http: //sourceforge. net/projects/phpdev 5 Free (GNU)
Exercício (chega de teoria) n Baixar o phpdev http: //prdownloads. sourceforge. net/phpdev 5/phpdev 4_5 NT. e xe? download n n Descompactar em c: tempphpdev Configurar o apacheconfhttpd. conf ¡ n Substituir c: phpdev por c: tempphpdev Rodar o phpdev_start. bat
Para um melhor entendimento n Baixe e instale o apache. ¡ n Baixe e instale o PHP ¡ n www. php. net Baixe e instale o My. SQL ¡ n www. apache. org www. mysql. com Configurem o conjunto!
PHP com Apache n Normalmente PHP é instalado no apache ¡ Pode rodar como módulo. (DLL) n ¡ Pode rodar como CGI [Common Gateway Interface]. (EXE) n n Mais eficiente. Mais vulnerável. Linux & Apache & My. Sql & PHP quando utilizados conjuntamente são muito eficientes, além de ser free. (LIMP)
Código PHP mais simples! <html> <head> <TITLE>Hello</TITLE> </head> <body> Hello World! </body> </html> n n É um script em php (pode ter a extensão. php) Não apresenta conteúdo dinâmico
Mas. . . E como é o código PHP realmente? n n Código HTML + Código PHP O PHP é delimitado por tags iniciais e finais que lhe permitem pular pra dentro e pra fora do "modo PHP". Forma canônica. . . <? php comandos; ? > . . . Forma abreviada. . . <? comandos; ? > . . .
Praticando. . . Hello World! (tradicionalmente) <HTML> <HEAD> <TITLE>Hello</TITLE> </HEAD> <BODY> <? php echo("Hello world!"); ? > </BODY> </HTML>
Saída Correspondente Saída no browser Hello world! Código HTML gerado <HTML> <HEAD> <TITLE>Hello</TITLE> </HEAD> <BODY> Hello world! </BODY> </HTML>
Exercícios n Exercício ¡ n Faça os exercícios 1, 2 e 3 Link ¡ http: //www/~jfp/cursophp/pratica
Pontos importantes n n Fácil alternar entre o “modo php” e o “modo html”. Um arquivo php é basicamente um arquivo html (parte estática) com tags de php para gerar a parte dinâmica.
Funcionamento do Interpretador Lê e imprime Início Modo HTML Leitura de <? php Leitura de ? > Interpreta linha por linha Modo PHP
Funcionamento do Interpretador n n Por default o interpretador vai varrer o arquivo no modo HTML. (Imprime o que é lido) Quando encontrar uma tag de início (<? php), entra no modo php. Quando no modo php, interpreta linha por linha e gera as saídas do script. Quando encontra a tag de fechamento (? >), volta ao modo HTML.
Um Segundo Exemplo <? php $a = 5; ? > <strong>Váriavel $a já declarada</strong> <? php $a = $a + 1; ? > <strong>Variável $a incrementada</strong> <? php print($a); ? >
Ponto e vírgula n Em php precisamos colocar ponto e vírgula depois de cada instrução <? php echo "ae, "; echo "td "; echo "blz? " // última instrução ? > n Serve para dizer ao interpretador php que ele chegou ao fim do comando.
Comentários (importantes) <? php echo "Isto é um teste"; //Comentário de uma linha /* Isto é um comentário de mais de uma linha e aqui temos outra linha . . . fim */ echo "Isto é um outro teste"; echo "O último teste"; #Comentário no estilo Unix shell ? >
Comandos echo e print n Server para “escrever” algo na saída HTML. (Browser) <? php echo("<h 1>Introdução</h 1>"); print("<p>bla bla</p>"); echo("Autor: Fulano") ? >
Referências n n HTTP: http: //jmarshall. com/easy/http/ Site oficial: http: //www. php. net RFC 2616 : HTML 1. 1 http: //www. ietf. org/rfc 2616. txt W 3 Schools : http: //www. w 3 schools. com
Dúvidas? ?
PHP & My. SQL José Francisco [jfp@cin. ufpe. br]
- Slides: 27