Php05
-
Upload
fernando-andrade -
Category
Documents
-
view
118 -
download
3
Transcript of Php05
05/01/13 Desenvolvimento Web I 2/37
Modularização
05/01/13 Desenvolvimento Web I 3/37
Subproblema
Subproblema1 SubproblemaN
Problema
05/01/13 Desenvolvimento Web I 4/37
Módulo
● Encapsulam o código da solução de subproblema do problema principal do algoritmo
05/01/13 Desenvolvimento Web I 5/37
Exemplo
Quero fazer uma calculadora. Em quais módulos posso dividir meu problema principal ?
05/01/13 Desenvolvimento Web I 6/37
Exemplo
Quero fazer uma calculadora. Em quais módulos posso dividir meu problema principal ?
Soma Divisão
Subtração Multiplicação
05/01/13 Desenvolvimento Web I 7/37
Manipulação de funções
● Um pedaço de código com objetivo específico
● Recebe um conjunto de parâmetros● Retorna um dado
05/01/13 Desenvolvimento Web I 8/37
Criação
● Utiliza-se o operador function seguindo do nome da função
● O nome deve começar obrigatoriamente por letra e sem espaços em branco
05/01/13 Desenvolvimento Web I 9/37
Criação
function nome_da_funcao ($arg1,$arg2,$argN) {
comandos
return $valor_de_retorno;
}
05/01/13 Desenvolvimento Web I 10/37
Exemplo
function soma($a,$b){
$valor = $a + $b;return $valor;
}
echo soma(3,2);
05/01/13 Desenvolvimento Web I 11/37
Exercício
Defina uma função média, que receba 3 números e retorna a sua média.
05/01/13 Desenvolvimento Web I 12/37
Exercício
function media($a,$b,$c){return ($a+$b+$c)/3;}
05/01/13 Desenvolvimento Web I 13/37
Escopo de variáveis
● É a parte do script onde a variável pode ser referenciada– Local– Global
05/01/13 Desenvolvimento Web I 14/37
Escopo local
● Uma variável declarada dentro de uma função PHP é local e só pode ser acessada dentro dessa função
● Podemos ter várias variáveis locais com mesmo nome em diferentes funções
● As variáveis locais são eliminadas logo quando a função é completada
05/01/13 Desenvolvimento Web I 15/37
Escopo global
● Refere-se a qualquer variável que é definida fora de qualquer função
● As variáveis globais podem ser acessadas de qualquer lugar do script
● Para acessa uma variável global dentro de uma função usamos a palavra-chave global assim como para defini-la
● As variáveis globais são armazenadas dentro de um array chamado $GLOBALS[indice] , onde o índice é o nome da variável
05/01/13 Desenvolvimento Web I 16/37
Exemplo
$total = 0;function km2mi($quilometros){
global $total;$total += $quilometros;return $quilometros * 0.6;
}echo 'percorreu '.km2mi(100).' milhas <br />';echo 'percorreu '.km2mi(200).' milhas <br />';echo 'percorreu no total '.$total.' quilometros';
05/01/13 Desenvolvimento Web I 17/37
Passagem de parâmetro
● Por valor● Por referência
05/01/13 Desenvolvimento Web I 18/37
Por valor
● O parâmetro passado é tratado como variável local dentro do contexto da função, não alterando o seu valor externo
05/01/13 Desenvolvimento Web I 19/37
Exemplo
function incrementa($variavel,$valor){
$variavel +=$valor;}$a = 10;incrementa($a,10);echo $a;
05/01/13 Desenvolvimento Web I 20/37
Por referência
● As transformações realizadas pela função sobre a variável é válida no contexto externo à função
● Utilizamos o operador & & junto ao parâmetro
05/01/13 Desenvolvimento Web I 21/37
Exemplo
function incrementa(&$variavel,$valor){
$variavel +=$valor;}$a = 10;incrementa($a,10);echo $a;
05/01/13 Desenvolvimento Web I 22/37
Exemplo
function incrementa(variavel,$valor = 40){
return $variavel +=$valor;}$a = 10;echo incrementa($a,10).”<br />”;echo incrementa($a).”<br />”;echo $a;
PHP permite definir valores default para parâmetros
05/01/13 Desenvolvimento Web I 23/37
PHP e Formulários Web
05/01/13 Desenvolvimento Web I 24/37
PHP e Formulários Web
<FORM NAME=”nome_form” ACTION=”script_processamento” METHOD=”Método de envio”>
Os formulários são delimitados pelas tags <FORM> </FORM>
05/01/13 Desenvolvimento Web I 25/37
PHP e Formulários Web
● NOME: nome do formulário para referência em funções JavaScritp, por exemplo;
● ACTION: programa que é responsável pelo tratamento dos dados informados pelo usuário;
● METHOD: método de envio dos dados para o servidor HTTP.– POST– GET
05/01/13 Desenvolvimento Web I 26/37
PHP e Formulários Web
Temos três tipos básicos de campos num formulário:
● INPUT● SELECT● TEXTAREA
05/01/13 Desenvolvimento Web I 27/37
PHP e Formulários Web
<INPUT TYPE=”tipo” NAME=”nome” VALUE=”valor inicial” SIZE=”tamanho” MAXLENGTH=”Máximo de caracteres” [CHECKED]>
➢ TYPE: define o tipo de campo
TEXT → campo de texto
PASSWORD → senha
CHECKBOX → campo de marcação
RADIO → escolha entre várias opções
05/01/13 Desenvolvimento Web I 28/37
PHP e Formulários Web
HIDEN → campo oculto, serve para enviar dados ao servidor sem a interferência do usuário
SUBMIT → botão de envio do formulário
RESET → limpeza do formulário, retornando os campos para seu valor inicial
IMAGE → opção ao tipo SUBMIT, em que o botão é trocado pela imagem informada, deve-se usar o atributo SRC para informar o nome da imagem
05/01/13 Desenvolvimento Web I 29/37
PHP e Formulários Web
NAME → identificador para o campo do formulário
VALUE → valor inicial do campo
SIZE → tamanho do controle gerado
MAXLENGHT → define o número máximo de caracteres (text e password)
CHECKED → define se o campo deve estar inicialmente marcado (radio e checkbox)
05/01/13 Desenvolvimento Web I 30/37
PHP e Formulários Web
<SELECT NAME=”nome” SIZE=”tamanho” [MULTIPLE]><OPTION VALUE=”valor” [SELECTED]>Texto</OPTION>…
</SELECT>
NAME → identificador para o campo do formulário
SIZE → tamanho em número de linhas da lista
MULTIPLE → indica que o usuário pode selecionar várias opções
05/01/13 Desenvolvimento Web I 31/37
PHP e Formulários Web
VALUE → valor do campo para essa opção
SELECTED → indica que essa opção deve ser marcada como selecionada
Texto → texto que será exibido na lista de opções
05/01/13 Desenvolvimento Web I 32/37
PHP e Formulários Web
NAME → identificador para o campo do formulário
ROWS → número de linhas
COLS → número de colunas
<TEXTAREA NAME=”nome” ROWS=”linhas” COLS=“colunas”>Texto padrão, se necessário
</TEXTAREA>
05/01/13 Desenvolvimento Web I 33/37
Exercício I
Crie uma função lista_estados para tornar o formulário do exemplo mais dinâmico. A função devera criar o campo select do formulário contendo os estados como opções.
05/01/13 Desenvolvimento Web I 34/37
Exercício II
Crie um formulário que contenha os campos código com 10 posições, nome com 30 posições (ambos texto), faixa etária com as opções até 10 anos, entre 10 e 15, entre 15 e 20, entre 20 e 30 e acima de 30 anos.
05/01/13 Desenvolvimento Web I 35/37
Exercício III
Crie um programa PHP para tratar o formulário do exercício II. Deve ser mostrado o nome e o código e em qual categoria o usuário se encaixa de acordo com sua idade:
Até 10 anos → Categoria A
Entre 10 e 15→ Categoria B
Entre 15 e 20→ Categoria C
Entre 20 e 30→ Categoria D
Acima de 30 → Categoria E
05/01/13 Desenvolvimento Web I 36/37
Exercício IV
Crie um formulário que contenha os campos nome (text), sobrenome (text), curso (radio) e linguagens que conhece (checkbox). Por fim crie um programa em PHP que mostre os dados informados pelo usuário.
Para campos com mais de um valor usar o atributo name como um array
→ name= “nome[]”
05/01/13 Desenvolvimento Web I 37/37
Obrigado!