PHP Hypertext Pre-Processor
O que é o PHP? Uma linguagem de scripting é uma linguagem cujo código não tem de ser compilado para ser executado! O código escrito é interpretado em tempo de execução para produzir resultados mais imediatos. Linguagem de Scripting Open-Source Especialmente destinada ao desenvolvimento de aplicações Web Pode ser embebida no código HTML Tem uma sintaxe semelhante ao C, ao Java e ao Perl Fácil de aprender O seu principal objectivo é permitir aos programadores de aplicações web escrever de forma rápida páginas que sejam geradas dinamicamente.
Exemplo <head> <title>exemplo1</title> </head> <?php echo Olá, sou um script PHP! ;?> Script HTML com código embebido para produzir determinado output (neste caso texto). O código PHP está embebido em tags especiais <?php e?>, por forma a permitir entrar e sair do modo php... A diferença entre o código PHP e o código Javascript é que o PHP é executado do lado do servidor! O que chega ao cliente é apenas HTML que não permite discernir o que quer que tenha sido executado pelo servidor para produzir tal resultado. Não é visível qualquer código PHP do lado do cliente!
Como é processado o código Pedido HTTP REDE REDE http://www.est.ips.pt/php/exemplo1.php <head> <head> <title>exemplo1</title> <title>exemplo1</title> </head> </head> <?php echo Olá, sou <?php echo Olá, sou um script PHP! ;?> um script PHP! ;?> Web-Server Olá, Olá, eu eu sou sou um um script scriptphp! Resposta: Página HTML de resultado Cliente
Como criar páginas web em PHP Instalar um web-server, nomeadamente apache Instalar o PHP Criar um site em que as páginas que envolvem processamento server-side têm a extensão.php (mais concretamente, são colocadas na directoria htdocs do webserver apache) Consultar a página da disciplina para obter o software necessário e um guia de instalação.
Instruções Output echo mensagem print mensagem Atribuição = Separador de Instruções ; Comentários // comentar uma linha /* comentar várias linhas */
Operadores Aritméticos: +, -, /, *, % Afectação: =, +=,.= Bitwise: & (and), (or), ^ (xor), ~ (not), << (shift left), >> (shift right) Comparação: ==,!=, <>, >=, <= Incremento e Decremento: ++, -- Lógicos: and, &&, or,,! (not), xor
Estruturas de Controlo Selecção if ( expr ): inst [ elseif ( expr ): inst ] [ else: inst ] endif; switch ( expr ) { case val1: inst break; case val2 : inst break;... default: inst } ou switch ( expr ): case val1: inst break; case val2 : inst break;... default: inst endswitch; Repetição while ( expr ) { inst } ou while ( expr ): inst endwhile; do { inst } while ( expr ); for ( expr1 ; expr2 ; expr3 ) { inst } ou for ( expr1 ; expr2 ; expr3 ): inst endfor; break; // para sair de dentro de um ciclo
Variáveis Uma variável PHP é válida apenas no bloco onde está definida! Declaração $nome (nome começa por uma letra ou _ seguido de letras ou dígitos. PHP é case-sensitive!!!) Tipos de Dados Boolean: $bool = TRUE; String: $str = PHP ; Concatenação faz-se com. : $str = Isto é.$str; // Isto é PHP Inteiro: $x=3; Real: $y=34.5; Arrays Sintaxe: array([key=>]value,...) (key é opcional e pode ser um inteiro positivo ou uma string. Exemplo: $arr = array( foo => bar,12=>true); Objectos
Conceitos Importantes no desenvolvimento de aplicações Web Session Uma sessão em PHP consiste numa forma de preservar dados através de acessos subsequentes à aplicação. Existe um objecto chamado Session através do qual podemos gerir os dados a preservar em cada acesso Request Um pedido de acesso ao servidor, feito através da rede usando o protocolo HTTP pode levar consigo parâmetros que podem, entre outras coisas, dar indicação ao servidor sobre como construir a página de resultado Existe um objecto chamado Request do qual podemos retirar o valor desses parâmetros
Conceitos Importantes no desenvolvimento de aplicações Web Há dois métodos diferentes de enviar informação ao servidor através de um form contido numa página: POST e GET Usando o GET os dados a enviar através do form fazem parte do URL Usando o POST, os dados fazem parte do corpo da mensagem enviada ao servidor Deve usar-se o método GET apenas em forms cujo objectivo é obter informação (Consultas) O método POST deve ser utilizado em forms de submissão de dados (login de utilizadores, inserção, actualização)
Variáveis Globais Declaração/Afectação (uma das formas possíveis) $_SESSION['User'] = "scott"; Utilização: print "$User";
Variáveis externas à página PHP (dados enviados por Forms) Método POST $_POST['nome_parametro'] Método GET $_GET['nome_parametro'] Se o PHP estiver configurado com Variáveis Globais $nome_parametro
Exemplo POST <head> <title> HTML - Bases de Dados : Submete dados ao servidor</title> </head> <h3> Passagem de parámetros entre páginas por POST </h3> <form method="post" action="http://localhost/webbd/php/post.php"> Nome: <input type="text" name= nome" value= nome size="20"><br> <input type="submit" value= Enviar" name= enviar"> <input type="reset" value= Limpar" name= limpar"> </form> <head><title>php - POST.PHP: Mostra resultado</title></head> <?php print <p>parametro passado por POST =.$_POST[ nome']. </p> ;?>
Exemplo GET <head> <title> HTML - Bases de Dados : Submete dados ao servidor</title> </head> <h3> Passagem de parámetros entre páginas por GET </h3> <form method= GET" action="http://localhost/webbd/php/get.php"> Nome: <input type="text" name= nome" value= nome size="20"><br> <input type="submit" value= Enviar" name= enviar"> <input type="reset" value= Limpar" name= limpar"> </form> <head><title>php - GET.PHP: Mostra resultado</title></head> <?php print <p>parametro passado por GET =.$_GET[ nome']. </p> ;?>
Exemplo Variáveis Globais <head> <title> HTML - Bases de Dados : Submete dados ao servidor</title> </head> <h3> Passagem de parámetros entre páginas por Variáveis Globais </h3> <form method= POST" action="http://localhost/webbd/php/global.php"> Nome: <input type="text" name= nome" value= nome size="20"><br> <input type="submit" value= Enviar" name= enviar"> <input type="reset" value= Limpar" name= limpar"> </form> <head><title>php - POST.PHP: Mostra resultado</title></head> <?php print <p>parametro passado por Variável Global =.$nome. </p> ;?>
Exemplo Variáveis de Sessão <head> <title> HTML - Bases de Dados : Submete dados ao servidor</title> </head> <h3> Passagem de parámetros entre páginas por Variáveis Globais </h3> <form method= POST" action="http://localhost/webbd/php/session-2.php"> Nome: <input type="text" name= nome" value= nome size="20"><br> <input type="submit" value= Enviar" name= enviar"> <?php $_SESSION[ nome ]= Bases de Dados ;?> </form> <head><title>php - POST.PHP: Mostra resultado</title></head> <?php $_SESSION[ nome ]= Disciplina de.$nome; print <p>parametro passado por Variável Global =.$nome. </p> ;?>
Referências Úteis Post and Get methods: what s the difference? http://www.cs.tut.fi/~jkorpela/forms/methods.html Manual de PHP: http://pt.php.net/manual/ Tutoriais de PHP, HTML, JavaScript,CSS, DHTML, : http://www.w3schools.com