05.08.2020 Views

APOSTILA PHP BRASA - VERSÃO FINAL

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Apostila de PHP

BÁSICA

Brazelino Bertolete Neto

Fábio José Colombo

Luciano de Jesus Guesso Rodrigues de Barros



SUMÁRIO

1Apresentando o PHP .................................................................................................... 5

1.1 Orientação a Objetos ............................................................................................... 6

1.1.1 POO – Programação Orientada a Objetos ........................................................ 6

1.1.1 Propriedades ................................................................................................. 7

1.1.2 Eventos ......................................................................................................... 7

1.1.3 Métodos ........................................................................................................ 7

2 Como é feita uma aplicação em PHP .................................................................. 8

3 Instalação do Wamp ............................................................................................... 9

3.1 Desenvolvimento .................................................................................................. 10

3.1.1 Entendendo o desenvolvimento .................................................................. 10

4 Desenvolvendo uma aplicação ........................................................................... 11

4.1 Montado a página do exercício 1 ................................................................... 11

4.1.1 Separador de Instruções e Variáveis ........................................................... 14

5 Variáveis ................................................................................................................ 16

5.1 Tipos de Dados ............................................................................................... 16

5.1.1 Tipos de Dados Numéricos Inteiros ........................................................... 16

5.2 Outros tipos de Dados..................................................................................... 16

5.3 Uso de variáveis no PHP ................................................................................ 16

5.4 Atribuindo variáveis no PHP .......................................................................... 16

5.5 Exemplo: ......................................................................................................... 17

6 Trabalhando com formulários HTML ................................................................. 20

6.1 Concatenação de variáveis.............................................................................. 22

6.2 Expressões Aritméticas................................................................................... 22

6.3 Operadores Matemáticos ................................................................................ 22

6.4 Operadores Lógicos ........................................................................................ 23

6.5 Operadores de Comparação ............................................................................ 23

7 Desenvolvendo aplicativos de exemplo ............................................................ 24

7.1 Implementação da página do exercício 1 em html ....................................... 24

7.2 Implementação da página conectar.php do exercício 1 .................................. 24

7.3 Implementação da página do exercício 2 em html ....................................... 25

7.4 Implementação da página dadosalunos.php do exercício 2 ............................ 27

8 Estruturas de Decisão: ........................................................................................ 31

8.1 Estrutura If ... { ............................................................................................... 31

8.1.1 Estrutura SE...Inicio do Bloco(IF...{) – Desvio Simples ............................ 31

8.2 Estrutura SE...{...else (IF...{...ELSE) – Desvio Composto ............................ 32

8.3 Estrutura SE...INICIO (IF...{) – Desvio Encadeado....................................... 34

9 Switch... { ............................................................................................................... 37

10 Estruturas de Repetição ...................................................................................... 39

10.1 While...{.......................................................................................................... 39

13 Código da página tabuada.php ........................................................................... 39

14 Código da página tabuadaqualquer.php ........................................................... 39

10.2 Estrutura Do...While ....................................................................................... 40

10.3 Estrutura For{. ............................................................................................... 41


11 Sub-rotinas ............................................................................................................ 44

12 .................................................................................................................................... 44

12.1 Funções que retornam valores ............................................................................ 44

12.1.1 Funções - Declaração................................................................................... 44

12.1.1 ...................................................................................................................... 44

12.1.2 Funções que não retornam valores .............................................................. 44

12.2 Procedimentos - Declaração ............................................................................... 44

12.2.1 Exemplo ....................................................................................................... 44

12.3 Passagem de Parâmetros ..................................................................................... 45

12.3.1 Passagem por Valor ..................................................................................... 45

12.3.2 Passagem por Referência ............................................................................. 45

12.4 Como sabemos quando um argumento é passado por valor ou por referência?. 45

12.4.1 Um exemplo correto! ................................................................................... 45

12.4.2 O exemplo correto ....................................................................................... 45

12.5 Exercícios de Criação de Funções ...................................................................... 46

13 Escopo de Variáveis................................................................................................ 47

13.1 Variáveis Locais ou Privadas.............................................................................. 47

13.2 Variáveis Globais ou Públicas ............................................................................ 47

13.3 Exemplos: ........................................................................................................... 47


1APRESENTANDO O PHP

PHP (um acrónimo recursivo para "PHP: Hypertext Preprocessor") é

uma linguagem de programação de computadores interpretada, livre e muito

utilizada para gerar conteúdo dinâmico na Web.

A linguagem surgiu por volta de 1994, como um subconjunto de scripts

Perl criados por Rasmus Lerdof. Com as adições de Zeev Suraski e Andi

Gutmans, dois programadores israelitas pertencentes ao Technion, o Instituto

Israelita de Tecnologia, que reescreveram o parser, era lançada em 1997 a

PHP 3, primeira versão estável e parecida com a linguagem atual. Ao

reescrever o parser, foi criado o Zend Engine, que é mantido oficialmente pela

empresa Zend em conjunto com a comunidade PHP. Em Maio de 2000 veio a

público a versão 4, e em Julho de 2004, a versão 5, onde a principal mudança

foi uma nova API para orientação a objetos provida pelo Zend Engine 2.

Trata-se de uma linguagem extremamente modularizada, o que a torna

ideal para instalação e uso em servidores web. Diversos módulos são criados

no repositório de extensões PECL (PHP Extension Community Library) e

alguns destes módulos são introduzidos como padrão em novas versões da

linguagem. É muito parecida, em tipos de dados, sintaxe e mesmo funções,

com a linguagem C e com a C++. Pode ser, dependendo da configuração do

servidor, embutida no código HTML. Além disso, destaca-se a extrema

facilidade com que PHP lida com servidores de base de dados, como MySQL,

PostgreSQL, Microsoft SQL Server,Oracle entre outros.


Apesar de ser uma linguagem de fácil aprendizado e de uso para

pequenos scripts dinâmicos simples, o PHP é uma linguagem poderosa

orientada a objetos.

1.1 ORIENTAÇÃO A OBJETOS

As linguagens orientadas a objeto, como é o caso do PHP, possibilitam que os

programadores criem programas usando objetos como unidade de dados e de ações.

O processo de evolução do que hoje é uma linguagem orientada vem de muito tempo,

por volta de 1970.

1.1.1 POO – Programação Orientada a Objetos

A POO define uma nova forma de criar programas, uma maneira mais

fácil de economizar linhas e linhas de código, tornando esse paradigma muito

divulgado. Porém, é pouco compreendido pela maioria dos desenvolvedores,

pois exige muita disciplina e mudança na atitude profissional desses

programadores. Fazer a documentação de um sistema passa a ser

fundamental.

A POO aumenta a produtividade do desenvolvimento de software

através de uma maior expansibilidade e reutilização de código, facilita o uso de

códigos, o programa principal carrega poucas linhas de códigos e o resultado

desta limpeza, gera manutenção mais simples. Abaixo alguns dos conceitos

que definem a orientação a objetos:

• Classe

• Objeto

• Atributos (Características ou propriedades)

• Ações (Eventos)

• Métodos

• Herança

• Poliformismo

PHP permite que se construa aplicações orientadas a objetos. Em linhas

gerais, aplicações orientadas a objetos se baseiam no conceito de classe. A

classe é um tipo de dados, contendo atributos e ações. O objeto é uma variável

de determinada classe. Contém atributos (propriedades) e ações (eventos).

Exemplificando: O coletivo de peixes é cardume, de pessoas é população. O


coletivo de objetos é chamado Classe, sendo este um dos principais

elementos-chave de uma linguagem orientada a objeto.

A programação orientada a objetos gira em torno dos componentes

(objetos) que compõem um programa. Esses objetos possuem propriedades,

eventos e rotinas. Vamos comparar com algo mais próximo da realidade, um

carro, por exemplo. Imaginemos o nosso carro como sendo nosso “objeto”,

esse carro possui várias propriedades como cor, modelo, ano, acessórios, etc.

E também vários eventos, por exemplo, ao girar a chave no contato, ao pisar

no acelerador, ao apertar a buzina. E por último as rotinas, que são ações

disparadas por um evento.

Exemplo:

Objeto Propriedades Evento Rotinas (métodos)

No dia a dia

Carro Cor, Modelo. Apertar Buzina Emite um som

Carro Acessórios Pisar no acelerador Aumenta a velocidade

1.1.1 Propriedades

São as características do objeto, como cor e tamanho.

É possível modificar propriedades de componentes durante a execução do sistema.

Para isto você deverá usar a sintaxe:

1.1.2 Eventos

Eventos são ações geradas pelo usuário.

Exemplo: Clicar o mouse, pressionar uma tecla, mover o mouse etc.

Cada evento gera uma procedure, onde você deve inserir as linhas de código que

envolve este evento. Por exemplo, os eventos OnClick, OnKeypress, Onload, entre

outros.

1.1.3 Métodos

São procedimentos ou funções embutidos nos objetos


2 COMO É FEITA UMA APLICAÇÃO EM PHP

O PHP é baseado no servidor, ou seja, quando você executa uma

página PHP no seu navegador, todo o código PHP é executado no servidor de

origem da página, ou seja, o navegador apenas exibe a página processada.

Para que possamos trabalhar com o PHP no Windows, precisamos

instalar no computador alguns programas que compõe um pacote que

chamamos de WAMP (Windows + Apache + MySQL + PHP).

Uma maneira simples de instalar esses softwares é através do WAMP,

um programa gratuito, que em apenas em poucos passos instala o servidor

Apache, o módulo para programação em PHP e o banco de dados MySQL.

O WAMP não é só um programa, são três em um:

_ Apache, o servidor mais popular de páginas web, sendo totalmente

compatível com o protocolo http.

_ MySQL, um dos banco dados mais difundido de código livre, por

possuir um excelente desempenho, ser compatível com muitos drivers e

também módulos de interfaces para muitas linguagens de programação e

suportar vários tipos de tabelas.

_ PHP, a linguagem ou tecnologia mais difundida para realizar páginas

com programação no servidor, acesso ao banco de dados, etc.


3 INSTALAÇÃO DO WAMP

Uma vez baixado, a instalação é imediata. Para iniciar, abriremos o

Wamp, se já não o tivermos aberto. No botão Iniciar/Todos os programas/

WampServer/startWampServer. O Resultado será o aparecimento de um

ícone próximo ao relógio do Windows como a figura abaixo, desde que, os

servidores PHP e MySQL tenham sido iniciados corretamente.

Quando o ícone do Wamp visualizado na figura acima estiver verde,

significa que os servidores foram startados e estão prontos para o

desenvolvimento. Clique no ícone do Wamp e escolha a opção Localhost, ou

digite diretamente no navegador o endereço http://localhost, nesse momento

deverá aparecer a página de início do Wamp como mostrado na figura abaixo.


Os documentos web serão armazenados na pasta de publicação de

documentos do Wamp, que é, “C:\wamp\www”. Crie, então, uma pasta

(Windows Explorer ou Meu Computador) chamada exercicio01 dentro da qual

serão gravados nossos primeiros scripts em PHP. Selecione o conteúdo da

barra de endereço da página local acessada anteriormente e pressione a tecla

F5, agora, constataremos a presença da pasta exercicio01 como mostrado na

figura abaixo.

3.1 Desenvolvimento

3.1.1 Entendendo o desenvolvimento

Para criar e editar scripts, em PHP, podemos utilizar qualquer editor de

Html, ou até mesmo o bloco de notas do Windows. Vamos inicialmente utilizar

o Notepad++, que pode ser baixado também gratuitamente da internet, depois

se desejar, poderá optar por outro editor PHP.

Um código php pode conter, ou não, tags Html, essas tags não são

processadas pelo servidor, são simplesmente passadas ao browser solicitante.

Normalmente utiliza-se Html para fazer a parte estática da página, sua

estrutura, o seu design e o php para a parte lógica, que exige processamento.

Os códigos em PHP com extensão “.php”.

Uma aplicação pode gerar uma grande quantidade de arquivos

como figuras da página, arquivos com extensão html, php dentre outros e por

isso cada projeto deve ser montado em um diretório específico.


4 DESENVOLVENDO UMA APLICAÇÃO

Neste material estaremos considerando que você tenha

conhecimentos básicos das linguagens html e javascript, quando

necessário serão explicados os códigos.

Há quatro conjuntos de tags que podem ser usadas para marcar blocos

de código PHP. Delas, somente duas (<?php. . .?> e <script

language="php">. . .</script>) são sempre disponíveis. As outras podem ser

ativadas ou desativadas a partir do arquivo de configuração php.ini.

O primeiro método, <?php. . .?>, é o preferencial, já que ele permite o

uso do PHP em códigos padrão XML e XHTML.

1) Vamos agora abrir o notepad++ e montar a seguinte página utilizando-se

do PHP.

4.1 Montado a página do exercício 1

Como dito anteriormente, abra o notepad++, clique no menu “Arquivo” e em seguida

clique na opção “Novo”. Uma nova página de edição de códigos se abrirá conforme a

figura abaixo.


Em seguida clique no menu “Linguagem”, navegue até a opção “P” e escolha a subopção

PHP, conforme a figura abaixo.

Digite o código conforme mostrado na figura abaixo.


Salve o arquivo como Exercicio_01.php na pasta “C:\Wamp\www\

exercicio01\” e em seguida, execute o arquivo criado. Para isso abra o

navegador de internet de sua preferência e digite o endereço:

http://localhost/exercicio01/exercicio_01.php. O resultado deve ser parecido

conforme o demonstrado na figura abaixo.

O comando echo retorna, o que está entre aspas, na forma de uma

cadeia de caracteres e disponibiliza, no formato html. Esta cadeia de

caracteres pode ser passada diretamente (como no exemplo) para o corpo do

navegador, ou para uma variável que poderá ser utilizada mais tarde no

processamento das informações.

O processo de interpretação, de um arquivo, pelo PHP inicia-se quando

uma das tags especiais é encontrada no conteúdo (conjunto de códigos) do

arquivo. O interpretador passa, então, a executar os comandos e só para


quando encontra uma tag de fechamento do PHP. Este mecanismo permite,

portanto, que o código PHP seja inserido em um documento escrito em

HTML. Logo, tudo o que estiver fora das tags PHP é exibido, no navegador,

exatamente como foi digitado.

4.1.1 Separador de Instruções e Variáveis

As instruções, no PHP, são separadas da mesma forma que

nas linguagens “C” e “Pascal”, ou seja: cada instrução termina com um ponto

e vírgula (;). A tag (?>) implica no fechamento de uma instrução, porém ela não

vem seguida de (;).

Agora vamos criar mais uma página de exemplo. Para isso abra uma

nova página de edição de códigos no Notepad++ como demonstrado

anteriormente e digite o código conforme mostrado na figura abaixo.


Salve o arquivo como Exercicio_02.php na pasta “C:\Wamp\www\

exercicio02\” e em seguida, execute o arquivo criado. Para isso abra o

navegador de internet de sua preferência e digite o endereço:

http://localhost/exercicio02/exercicio_02.php. O resultado deve ser parecido

conforme o demonstrado na figura abaixo.


5 VARIÁVEIS

As variáveis são símbolos que armazenam valores temporariamente na memória, já

que toda informação a ser processada (via memória RAM) por um computador por

meio de um programa necessita ser previamente armazenada.

5.1 Tipos de Dados

Os tipos de dados são classificados em diferente categorias, conforme abaixo :

5.1.1 Tipos de Dados Numéricos Inteiros

Intervalo

5.1.1.1 Tipo

Integer -2.147.483.648 a 2.147.483.647

Float 2,9 x 10 -39 a 1,7 x 10 38

5.2 Outros tipos de Dados

5.2.1.1 Tipo

String

Boolean

Intervalo

Qualquer caracter (comprimento de 1 a 255 caracteres)

True(Verdadeiro) ou False(Falso)

O tipo da variável geralmente não é configurado pelo programador: isto é

decidido em tempo de execução pelo PHP, dependendo do contexto no qual a

variável é usada.

5.3 Uso de variáveis no PHP

As variáveis, em PHP, não precisam ser declaradas, mas devem sempre

ter “$” na frente do nome. Por sua vez os nomes ou identificadores devem

sempre começar com letras ou com o caractere “_”.

Exemplo: $nome ou $_CPF. Em uma variável podemos armazenar os mais

diversos tipos de dados.

5.4 Atribuindo variáveis no PHP

A atribuição de valores para as variáveis é feita através do comando


$var1 = 1;

{ recebe um valor - inteiro, real...}

$var2 =$varX + $varY; { recebe uma expressão }

$varBool = false; { atribuição lógica }

$varStr = “atribui string”; { recebeu um string }

$varletra = “a”; { recebe um caracter }

5.5 Exemplo:

Para demonstrar o uso de variáveis no php, abra uma nova página de

edição de códigos no Notepad++ como demonstrado anteriormente e digite o

código conforme mostrado abaixo:

<html>

<head>

<title>PHP – Aula Exemplo do Uso de Variáveis</title>

</head>

<body>

<?php

// Declarando variáveis

$var1 = 1; // inteiro

$varX = 9.50; // ponto flutuante

$varY = 9.50; // ponto flutuante

$var2 = $varX + $varY; //recebendo o resultado de uma

expressão

$varSTR = "Atribui String"; // variável texto – string

$varletra = "a"; // variável caracter

$varbool = true; // atribuição lógica

echo "Exemplo de uma aplicação em PHP";


print "<P>";

echo "Conteúdo de var1: ";

echo $var1;

print "<P>";

echo "Conteúdo de varX: ";

echo $varX;

print "<P>";

echo "Conteúdo de varY: ";

echo $varY;

print "<P>";

echo "Conteúdo de var2: ";

echo $var2;

print "<P>";

echo "Conteúdo de varSTR: ";

echo $varSTR;

print "<P>";

echo "Conteúdo de varletra: ";

echo $varletra;

print "<P>";

echo "Conteúdo de varbool: ";

echo $varbool;

?>

</body>

</html>

Salve o arquivo como Exercicio_03.php na pasta “C:\Wamp\www\

exercicio03\” e em seguida, execute o arquivo criado. Para isso abra o


navegador de internet de sua preferência e digite o endereço:

http://localhost/exercicio03/exercicio_03.php. O resultado deve ser parecido

conforme o demonstrado na figura abaixo.


6 TRABALHANDO COM FORMULÁRIOS HTML

Agora veremos que uma das características mais fortes do PHP é o jeito

como ele trata formulários HTML. Para isso abra uma nova página de edição

de códigos no Notepad++ como demonstrado anteriormente, selecione HTML

no menu Linguagem e digite o código conforme mostrado abaixo:

Salve o arquivo como Exercicio_04.html na pasta “C:\Wamp\www\

exercicio04\” e em seguida, execute o arquivo criado. Para isso abra o

navegador de internet de sua preferência e digite o endereço:

http://localhost/exercicio04/exercicio_04.html. O resultado deve ser parecido

conforme o demonstrado na figura abaixo.

Não há nada de especial neste formulário. É um formulário HTML

comum. Quando o usuário preencher este formulário e clicar no botão enviar, a

página receber.php é chamada. Vamos escrever agora o arquivo

receber.php. Para isso abra uma nova página de edição de códigos no

Notepad++ como demonstrado anteriormente, selecione PHP no menu

Linguagem e digite o código conforme mostrado abaixo:


Salve o arquivo como receber.php na pasta “C:\Wamp\www\

exercicio04\” e em seguida, abra o arquivo exercício_04.html e execute-o

totalmente digitando um nome e um e-mail e clique no botão enviar. Você

obterá como resposta algo parecido com o demonstrado pela figura abaixo:

As duas páginas estão ligadas. As variáveis $_POST[‘txtnome’] e

$_POST["txtmail"] são automaticamente criadas para você pelo PHP. Nós

simplesmente usamos a auto-global $_POST que contém todos os dados

vindos do método POST, obtendo as informações digitadas nas caixas de texto

txtnome e txtmail. Quando um formulário é submetido para um script PHP,

qualquer variável do formulário será automaticamente disponível para o script.

Algumas configurações e suas preferências pessoais definirão as vias pela

quais você pode acessar os dados de seu formulário. Neste caso estamos

utilizando como via de comunicação o Método POST. O PHP armazena os

valores vindos por POST em uma variável associativa chamada $_POST que

armazena os dados vindos do formulário. Por isso que para acessarmos os


valores vindos de um formulário como nome e e-mail, por exemplo, poderíamos

fazer:

$nome = $_POST[‘txtnome’];

$mail = $_POST[‘txtmail’];

E assim é feita a transmissão de variáveis no php.

6.1 Concatenação de variáveis

Se um sinal de cifrão ($) é encontrado, o interpretador tentará obter

tantos identificadores quanto possíveis para formar um nome de variável válido.

Há várias formas de se concatenar variáveis conforme o exemplo abaixo:

<?php

$bebida = 'Coca';

echo "O sabor das '$bebida's é otimo" ;

echo "Ele bebeu algumas ${bebida}s";

echo "Ele bebeu algumas {$bebida}s";

echo "Ele bebeu algumas ". $bebida ."s";

?>

6.2 Expressões Aritméticas

SQRT

Retorna a raiz quadrada de um valor

Sintaxe : $valor = sqrt($valor)

POW

Retorna a potenciação de um valor por outro valor.

Sintaxe : $resultado = pow($valor1, $valor2)

6.3 Operadores Matemáticos

Operador Ação

+ Soma

- Subtração

/ Divisão

* Multiplicação

% Resto da divisão inteira


6.4 Operadores Lógicos

Operador Ação

&&

E

|| Ou

! Não

6.5 Operadores de Comparação

Operador Ação

== Idêntico

!= Diferente

< Menor que

> Maior que

<= Menor ou igual

>= Maior ou igual


7 DESENVOLVENDO APLICATIVOS DE EXEMPLO

1) Abra o Notepad++ e monte a tela abaixo:

7.1 Implementação da página do exercício 1 em html

<html>

<head>

<title> Aplicativo concatenação </title>

</head>

<body>

<form action="conectar.php" method= "POST">

Informe seu nome...: <input type = "text" name="txtnome"> <br>

Informe seu sobrenome...:<input type = "text" name="txtsobrenome"> <br>

<input type ="submit" value="conectar">

<input type="reset" value="Limpar"/>

</body>

</html>

7.2 Implementação da página conectar.php do exercício 1

<html>

<head>

<title> Página conectar.php </title>

</head>

<body>

<?php

echo "Seu nome completo é...:".$_POST['txtnome']."

?>

</body>

</html>

".$_POST['txtsobrenome'];


Exercício 02

1) Abra o Notepad++ e monte a tela abaixo:

7.3 Implementação da página do exercício 2 em html

<html>

<head>

<title> Cadastro de Alunos </title>

</head>

<body>

<script src="mascaras.js" type="text/javascript">

</script>

<form name="form1" action="dadosalunos.php" method="POST">

<fieldset style="width: 40%">

<legend>

Dados Pessoais

</legend>

Nome <input type="text" name="txtnome" size="50"><br>

Telefone<input type="text" name="txttelefone" size="20" maxlength="14"

onKeyPress="MascaraTelefone(this);" ><br>

RG<input type="text" name="txtRG" size="14" maxlength="15">

</fieldset>

<br>


<fieldset style="width: 40%">

<legend>

Opções

</legend>

<input type="submit" value="confirmar">

<input type="reset" value="Limpar">

</fieldset>

<br>

<fieldset style="width: 40%">

<legend>

Dados Escolares

</legend>

Curso <select name="cbocursos">

<option value="Informática">Informatica

<option value="Administração">Administracao

<option value="Enfermagem">Enfermagem

<option value="Alimentos">Alimentos

</select>

<br>

Modulo<input type="text" name="txtmodulo" size="10">

</fieldset>

</form>

</body>

</html>

</form>

</body>

</html>

Explicando o código fonte

Dados Pessoais, Opções e Dados Escolares – Tag html <fieldset> –

usada para agrupar elementos relacionados dentro de um

formulário, desenhando uma borda em torno desses elementos. Ela é

especialmente útil na organização de formulários extensos. Junto com ela,

usamos a tag <legend> para definir um título para o bloco.

Máscara utilizada na caixa do Telefone – Chamada ao método

MascaraTelefone() – contido no arquivo javascript mascaras.js*

Caixinha do Curso – Tag html <select name> – O atributo name

especifica o nome de uma lista drop-down.

*Colocando máscara no telefone: O arquivo de configuração maskaras.js pode ser

baixado através do site http://www.4shared.com/get/6jRJbVBIce/mascaras.html e deve


ser colocado no mesmo diretório da aplicação. Ele possui uma série de métodos prontos

para criar, formatar e validar dados como CPF, CNPJ, CEP dentre outros, podendo ser

chamado através da tag <script src="maskaras.js" type="text/javascript">.

Inserindo itens no cbocursos – Foi ulizada a tag <option value> com as respectivas

opções de curso.

7.4 Implementação da página dadosalunos.php do exercício 2

<html>

<head>

<title> Página dadosalunos.php </title>

</head>

<body>

<?php

echo "Segue abaixo as informações digitadas na página anterior". '<br>';

echo "Nome digitado...: ".$_POST['txtnome']. '<br>';

echo "Telefone...: ".$_POST['txttelefone']. '<br>';

echo "Curso...: ".$_POST['cbocursos']. '<br>';

echo "RG...: ".$_POST['txtRG']. '<br>';

echo "Módulo...: ".$_POST['txtmodulo']. '<br>';

?>

</body>

</html>

Exemplos

1) Desenvolva uma página que calcule o salário de uma pessoa.

Implementação da página calcularsalario.html

<html>

<head>

<title> Cálculo de Salario </title>

</head>

<body>

<script src="mascaras.js" type="text/javascript">

</script>


<form name="frmsalario" action="calcularsalario.php" method="POST">

Digite a quantidade de horas trabalhadas <input type="text" name="txthoras"

onkeypress="return numeroponto(this,event);"><br>

Digite o valor da hora....R$<input type="text" name="txtvalor" onkeypress="return

numeroponto(this,event);"><br>

<input type="submit" value="Salario"><br>

<input type="reset" value="Limpar"><br>

</form>

</body>

</html>

Implementação da página calcularsalario.php

<html>

<head>

<title> Página calcularsalario.php </title>

</head>

<body>

<br>

<?php

$valor = $_POST['txtvalor'];

$horas = $_POST['txthoras'];

$salario= $valor * $horas;

echo "De acordo com as informações digitadas na página anterior, o salário é

R$".$salario;

?>

</body>

</html>

Para a caixa de texto aceitar somente números e ponto;

Primeiramente copie o arquivo mascaras.js para o mesmo diretório de

sua aplicação e depois o referencie no código utilizando <script

src="mascaras.js" type="text/javascript">. Em seguida na tag de criação da

caixa de texto adicione onkeypress="return numeroponto(this,event);",

sendo que numeroponto é um método javascript contido em mascaras. Nesse

método é passado o objeto onde a regra de digitação será imposta e o evento

keypress ( no pressionar da tecla).


2) Desenvolva uma página que leia dois valores A e B e em seguida apresente o

resultado da soma desses valores e também o quadrado da soma dos valores lidos.

Implementação da página calculaquadrado.html

<html>

<head>

<title> Cálculo de Quadrados </title>

</head>

<body>

<form action="calcularquadrado.php" method="POST">

Digite o valor de A <input type="text" name="txta"><br>

Digite o valor da B <input type="text" name="txtb"><br>

<input type="submit" value="Calcular"><br>

</form>

</body>

</html>

Implementação da página calculaquadrado.php

<html>

<head>

<title>Página calcularquadrado.php </title>

</head>

<body>

<br>

<?php

$A = $_POST['txta'];

$B = $_POST['txtb'];

$soma= $A + $B;

$quadr = pow($soma,2);

echo "A soma dos valores é ".$soma .'<br>';

echo "O quadrado da soma é ".$quadr;

?>

</body>

</html>


3) Agora implemente esse exercício. Você deverá digitar o valor total da compra e o

número de parcelas e na página php automaticamente será mostrado o valor das

parcelas, que será o total da compra dividido pela quantidade de parcelas.

• Faça a rotina para que as caixas de texto recebam apenas números.


8 ESTRUTURAS DE DECISÃO:

Um programa é uma lista de seqüência de comandos que são executados

seqüencialmente. A menos que seja solicitado o contrário, um programa em php

executa as instruções do início de um programa (tag <?php) até o fim ( tag ?>).

Conforme aumenta a complexidade, tais programas precisão tomar decisões e alterar

este processamento seqüencial. Com estruturas de decisões, o fluxo de instruções

seqüenciais é escolhido em função do resultado da avaliação de uma ou mais

condições, onde uma condição é uma expressão lógica. Existem dois tipos de

estruturas de decisão, aquela que fornece apenas duas possibilidades

(se...então...senão...fim), de seqüência para o programa, e outra que possui inúmeras

possibilidades (caso...senão...fim) de seqüências.

8.1 Estrutura If ... {

8.1.1 Estrutura SE...Inicio do Bloco(IF...{) – Desvio Simples

Exemplo: Desenvolva uma página que pergunte dois valores (A e B). Mostre a soma

desses valores e verifica se a soma for maior que dez, deverá emitir uma mensagem de

número maior que dez

Implementação da página php

<html>

<head>

<title>Página calcularsomamostrar.php </title>

</head>

<body>

<br>

<?php

$A = $_POST['txta'];

$B = $_POST['txtb'];

$soma= $A + $B;

echo "A soma dos valores é ".$soma .'<br>';

if ($soma>10) {

echo "Soma maior que dez ";

}

?>


</body>

</html>

Exercício. Crie uma página para entrar com o valor da compra. Se valor

da compra for maior ou igual a 100, emitir uma mensagem de “Compra maior

ou igual a cem”.

8.2 Estrutura SE...{...else (IF...{...ELSE) – Desvio Composto

Exemplo: Desenvolva uma página que pergunte dois valores (A e B). Mostre a soma

desses valores e verificar, se a soma for maior que dez, deverá emitir uma mensagem de

número maior que dez na cor vermelha, caso contrário, emitir uma mensagem de

número menor ou igual a dez na cor azul.

Observação: Sempre que iniciar um bloco para uma estrutura (If, Else, Case, While,

For) é necessário acrescentar o { e o }, conforme este modelo.


Implementação da página php

<html>

<head>

<title>Página calcularsomamostrar2.php </title>

</head>

<body>

<br>

<?php

$A = $_POST['txta'];

$B = $_POST['txtb'];

$soma= $A + $B;

echo "A soma dos valores é ".$soma .'<br>';

if ($soma>10) {

echo '<font color="blue">'. "Soma maior que dez". '</font>';

}

else{

echo '<font color="red">'. "Soma menor que dez". '</font>';

}

?>

</body>

</html>

Para inserir tags html no código php

Como mostrado vemos que uma das maneiras mais simples de se fazer isso é

colocar a tag entre o sinal de apóstrofe(‘) dentro do php, daí, '<font color="blue">'.

"Soma maior que dez". '</font>'. Nos códigos anteriores fazíamos isso com a tag

<br> que serve pra pular linha. Exemplo: echo "A soma dos valores é ".$soma .'<br>';

Exercício 1. Crie uma página para entrar com um número. Se o número

for maior ou igual a 0, emitir uma mensagem em vermelho

positivo”, senão emitir uma mensagem em azul de “Número Negativo”.

de “Número

Exercício 2.Crie uma página para entrada de um número. No final emitir

uma mensagem dizendo se o número é par ou ímpar.


Exercício 3. Crie um programa que entre com a senha e o nome do

usuário. Se senha=”ETE” e o usuário =”ETE” emitir uma mensagem de “Bem

vindo ao Sistema”, senão emitir mensagem de “Usuário ou senha inválidos!!,

tente novamente!!!”. NOTA: Quando você quiser uma caixa de texto para

entrada de informações secretas, utilize a tag <input type="password"> no

lugar de <input type="text">.

8.3 Estrutura SE...INICIO (IF...{) – Desvio Encadeado

Exemplo: Desenvolva uma página que pergunte dois valores (A e B). Mostre a soma

desses valores e verifica se a soma for maior que dez, deverá emitir uma mensagem de

número maior que dez, se a soma for menor que 5, emitir uma mensagem de número

menor que 5, caso contrário, emitir uma mensagem que o número está entre 5 e 10.

Implementação da página php

<html>

<head>

<title>Página calcularsomamostrar3.php </title>

</head>

<body>

<br>

<?php

$A = $_POST['txta'];


$B = $_POST['txtb'];

$soma= $A + $B;

echo "A soma dos valores é ".$soma .'<br>';

if ($soma>10) {

echo "Soma maior que dez";}

elseif ($soma<5) {

echo "Soma menor que cinco";}

else {

echo "Soma entre cinco e dez";}

?>

</body>

</html>


Exercício 1. Faça uma página que calcule e média e a situação do

aluno. Se a média for maior ou igual a 8, a situação será Aprovado, Se a média

for menor ou igual a 3, a situação será Reprovado, caso contrário estará de

recuperação.

Exercício 2. Faça uma página para calcular o peso ideal de uma

pessoa. Entrar com o nome da pessoa, o peso, o sexo e a altura. Se sexo for

igual a masculino, usar a formula: PI=altura2 * 23. Se sexo feminino, usar a

formula: PI=altura2 * 22. Mostrar ao final o Peso ideal calculado e se o peso for

maior que o peso ideal calculado, então deverá ser emitida uma mensagem em

vermelho de “Acima do peso ideal”, Se o peso for menor que o peso ideal

calculado, então deverá ser emitida a mensagem em amarelo “Abaixo do peso

ideal”, caso contrário a mensagem emitida deverá ser “Dentro do peso ideal”

em azul.


9 SWITCH... {

A estrutura Switch permite analisarmos uma expressão e comparar o resultado com

uma série de condições até encontrar um resultado igual ao retornado da expressão.

Exemplo: Desenvolva uma página que pedirá um valor numérico do tipo inteiro que

esteja entre 1 e 12. O programa deve apresentar o nome do mês correspondente.

Caso o usuário digitar um mês inexistente, deverá ser emitida uma mensagem do erro

cometido.

Implementação da página php

<html>

<head>

<title>Página verificarmes.php </title>

</head>

<body>

<br>

<?php

$mes = $_POST['txtnum'];

switch ( $mes ){

case 1:

echo "JANEIRO";

break;

case 2:

echo "FEVEREIRO";

break;

case 3:

echo "MARÇO";

break;

case 4:

echo "ABRIL";

break;

case 5:

echo "MAIO";

break;

case 6:

echo "JUNHO";

break;

case 7:

echo "JULHO";

break;


case 8:

echo "AGOSTO";

break;

case 9:

echo "SETEMBRO";

break;

case 10:

echo "OUTUBRO";

break;

case 11:

echo "NOVEMBRO";

break;

case 12:

echo "DEZEMBRO";

break;

default:

echo "MÊS INCORRETO!";

}

?>

</body>

</html>

Exercício 1)-Crie uma página com base na tabela abaixo:

Código

Cargo

1 Secretária

2 Gerente

3 Operário

4 Analista

5 Faxineiro

Caso Código igual a 1, emitir mensagem “Secretária” e assim em diante. Caso

contrário, emitir mensagem de código inválido.

Exercício 2)- Fazer um programa que entre com dois valores (v1 e V2) e com

o código da operação desejada conforme tabela abaixo:

Cód Operações Fórmulas

1 Soma V1+V2

2 Subtração V1-V2

3 Divisão V1/V2

4 Multiplicação V1*V2

Ao final mostre o resultado.


10 ESTRUTURAS DE REPETIÇÃO

10.1 While...{

A estrutura While possui a seguinte sintaxe:

While <condição> {

<comando a>;

No php, as instruções são separadas umas das outras pelo ponto-e-vírgula (;) e a

estrutura While entende como sendo o seu fim a primeira chave (}) que encontrar.

Exemplos:

1) Mostrar os valores da tabuada do dois de 0 a 10 no ListBox:

2) Mostrar a tabuada de um número qualquer.

13 CÓDIGO DA PÁGINA

TABUADA.PHP

<html>

<title> página tabuada.php </title>

<body>

<?php

$i = 0;

while( $i <= 10 ){

$tab = 2 * $i;

echo ‘2’ . ' X ' .$i . ' = ' .$tab.'<br />';

// $i++;

}

?>

</body>

</html>

14 CÓDIGO DA PÁGINA

TABUADAQUALQUER.P

HP

<html>

<head>

<title> página tabuadaqualquer.php

</title>

</head>

<body>

<?php

$i = 0;

$num = $_POST['txtnum'];

while( $i <= 10 ){

$tab = $num * $i;

echo $num . ' X ' .$i . ' = ' .$tab .

'<br />';

$i++;

}

?>

</body>

</html>


Exercícios

1) Elabore uma página em php que Apresente os quadrados dos números inteiros

de 5 a 10.

2) Elabore uma página em php que mostre os números pares, bem como, a

somatória desses números, na faixa de 1 a 10.

10.2 Estrutura Do...While

Repete um bloco de instruções até que uma certa condição seja satisfeita. Sintaxe:

Do{

Comando_1;

Comando_2;

Comando_3;

.... . .

} While (expressão_lógica);

Neste caso, todos os comandos entre as palavras reservadas DO e WHILE

serão executadas, até que a expressão lógica seja verdadeira (FALSE),

obviamente, devemos ter o cuidado para que ela venha a ser FALSE em

determinado momento, pois caso contrário, teremos um LOOP INFINITO, (o

programa fica preso dentro da estrutura DO - Whilel).


Exemplo: Vamos usar o mesmo exemplo da tabuada visto na estrutura While

{:

Implementação da página

tabuadadois.php

<HTML>

<HEAD>

<TITLE>Página que calcula tabuada do

dois</TITLE>

</HEAD>

<BODY>

<?php

$i = 0;

do{

$tab = 2 * $i;

echo '2' . ' X ' .$i . ' = ' .$tab .

'<br />';

$i++;

} while( $i <= 10 );

?>

</body>

</html>

10.3 Estrutura For{.

O comando FOR identifica uma variável de controle para o loop e indica

uma faixa de valores ($ValorInicial ; $ValorFinal) que a variável receberá

durante as iterações do loop. Além disso, o For utiliza-se de uma variável

contadora que controla o número de vezes que o loop será executado. Esse

contandor não é um contador simples, pois, não conta obrigatoriamente

apenas de uma em uma unidade, somando (vcontadora++) ou subtraindo

(vcontadora--) uma unidade da variável contadora.

Funciona dessa forma:

No início da execução, a variável de controle recebe o valor do

ValorInicial, e a primeira iteração é executada.

Antes de cada iteração subseqüente, a variável de controle recebe o

próximo valor da faixa de ValorInicial até ValorFinal.

O loop termina após a iteração correspondente ao ValorFinal.

FOR (variável= ValorInicial; variável<= ValorFinal;i++){

...... comandos;

}


Num loop FOR cuja intenção do programador é incrementar, o valor

ordinal do ValorInicial deve ser menor que o valor ordinal do ValorFinal. (Senão

o loop não terá ação nenhuma). Alternativamente, você pode usar o operador

aritmético -- para projetar um loop FOR que seja decrementado dentro de uma

faixa ordinal:

for( $i = 1; $i <= 5; $i++ ){

echo $i .'<br />';

}

Será apresentado na página:

1

2

3

4

5

FOR (variável= ValorInicial; variável>= ValorFinal;i--)

...... comandos;

}

for($i = 5; $i >=1; $i--){

echo $i .'<br />';

}

Será apresentado na tela:

5

4

3

2

1

DICAS: A variável do For{ é incrementada ou decrementada automaticamente,

portando você nunca deve alterar o valor desta variável dentro do laço do For{.

Exemplo: (Nunca faça !)

FOR ($Contador = 50; $Contador>=1;i--){

i-=1; }Você terá um decremento de 2 em 2 e não de um em um como estipulado no

for - Contador é alterado no laço! }

- Caso você deseje alterar o valor que será somado ou subtraído a cada

execução do for, faça conforme os exemplos abaixo:

- Decremento de 2 em 2: for($i = 50; $i >=1; $i-=2){ comandos}

- Incremento de 2 em 2: for($i = 1; $i <=50; $i+=2){ comandos}

- Certifique-se de que a variável contadora vai realmente chegar até o valor final

indicado no For{, pois caso no contrário teremos um laço infinito.

- Quando você tem várias instruções a serem executadas dentro do laço For,

você deve usar o par de chaves {/} (da mesma forma como ocorre com os

outros comandos do PHP, como por exemplo no IF/THEN/ELSE).

- Usando um Laço For{ você sabe exatamente o número de execuções que seu

programa fará.

Exercícios

1) Use o For/Do - Apresentar a soma do intervalo entre os números inteiros de 3 a

8


2) Use o For/Do – Apresentar os quadrados dos números inteiros de 1 a 10

3) Use o For/Do – Apresentar todos os números divisíveis por 4 que sejam

menores de 20


11 SUB-ROTINAS

Sub-rotinas são módulos separados, têm funcionalidade completa (entrada,

processamento e saída) e permitem criar aplicações modulares, de mais fácil

manutenção.

12.1 Funções que retornam valores

São sub-rotinas que devolvem ao programa principal um valor.

12.1.1 Funções - Declaração

function Nome (Argumentos)

{

Comandos

Return Valor

}

Perceba que no corpo da função há a cláusula Return que devolve o valor para o

programa principal através da atribuição Return Valor.

Exemplo

<?php

function Soma($x,$y)

{

$s=$x+$y;

return $s;

}

echo Soma(4,5);

?>

12.1.2 Funções que não retornam valores

Esses tipos de funções são usadas para dividir um programa em blocos menores e

armazenar trechos de códigos que podem ser chamados inúmeras vezes durante a

montagem de um programa. Não retorna valores após seu processamento. Em

algumas linguagens elas são chamadas de procedimentos, mas em php o nome é

função (function) mesmo, não importando se os valores são retornados ou não.

12.2 Procedimentos - Declaração

function Nome (Argumentos)

{

Comandos

}

Note que realmente não há retorno de valor como no primeiro exemplo.

12.2.1 Exemplo

function DuasContas($A,$B, $S, $D)


{

$S=$A+$B;

$D=$A-$B;

}

Será que isto funciona?

Como a função “sabe” quais dos argumentos são utilizados para trazer os valores do

programa principal e quais são utilizados para devolver valores ao programa principal?

12.3 Passagem de Parâmetros

Os argumentos podem ser passados para a sub-rotina de duas maneiras:

• Por valor.

• Por referência.

12.3.1 Passagem por Valor

• Um argumento é passado por valor quando apenas seu valor é recebido do

programa principal.

• Qualquer alteração feita nesses argumentos dentro da sub-rotina não é

refletida no programa principal.

12.3.2 Passagem por Referência

• Neste caso, é passado a sub-rotina o endereço do argumento do programa

principal.

• Qualquer alteração feita nestes argumentos dentro da sub-rotina é refletida no

programa principal.

• Não é utilizado em funções que se utilizam da cláusula return, apenas em

funções que não se utilizam justamente para devolver valores ao programa

principal.

12.4 Como sabemos quando um argumento é passado por

valor ou por referência?

• Um argumento passado por referência é precedido pelo símbolo &.

• Se não estiver presente o símbolo &, o argumento é passado por valor.

12.4.1 Um exemplo correto!

• No exemplo dado de procedimento, os argumentos $A e $B eram de entrada,

sendo, portanto, passados por valor, sem &.

• Os argumentos $S e $D eram de saída, sendo, portanto, passados por

referência, com &.

12.4.2 O exemplo correto

<?php

function DuasContas($A,$B,&$S,&$D)

{

$S=$A+$B;

$D=$A-$B;

}

DuasContas(4,3,$a,$b);

echo $a .'<br>';

echo $b .'<br>';


12.5 Exercícios de Criação de Funções

1) Crie uma página que funcionará da seguinte maneira: Quando o número

digitado pelo usuário for menor que 100, então a página exibirá a mensagem

“número menor que 100”, senão retornará “número maior ou igual a 100”.

Use uma função cujo parâmetro deverá receber o valor do número

digitado pelo usuário.

2) Crie uma página que leia dois números inteiros e exiba a soma desses

dois números. Use uma função com dois parâmetros para armazenarem

os valores dos números digitados e em seguida baseado nestes números,

execute a operação, retornando a soma.

3) Faça uma página que dado o código será exibido o cargo na empresa.

Use uma função que pegue no parâmetro dela o número digitado e em

seguida baseado nesse número retorne o cargo de acordo com a tabela

abaixo:

Código Estado Civil

1 Secretaria

2 Gerente

3 Operário

Qualquer outro Outros

valor

4) – Crie um página que retorne a área do triângulo. O usuário deverá entrar

com os valores de base e altura e o programa calculará a área baseado na

seguinte fórmula: Área= base x altura.

Faça uma função que retorne a área do triângulo, sendo que essa função

deverá ter dois parâmetros que armazenarão os valores de base e altura.

5)- Faça uma página que dado um número de Bytes, via teclado, exibir essa

quantidade transformada em Kilobytes, Megabytes e Gigabytes, sabendo que:

1 Kilobyte 1024 bytes

1 Megabyte 1024 Kilobytes

1 Gigabyte 1024 Megabytes

Use uma função que faça essa conversão, sendo que o parâmetro deste

procedimento deverá receber o valor do número digitado pelo usuário.


13 ESCOPO DE VARIÁVEIS

Definimos escopo como sendo a visibilidade de uma variável dentro de um programa

ou sub-rotina.

As variáveis podem ser de dois tipos básicos:

• Locais ou privadas.

• Globais ou públicas.

13.1 Variáveis Locais ou Privadas

• A maior parte das variáveis no php tem somente escopo local.

• Qualquer variável dentro de uma função é por default limitada dentro do

escopo local dessa função

• Após o término da execução do bloco ou subrotina, o seu contéudo é

destruído.

13.2 Variáveis Globais ou Públicas

• No PHP, as variáveis globais precisam ser declaradas globais dentro de uma

função se ela vai ser utilizada naquela função.

• A variável é criada no início da execução do página só é destruída no final da

execução desta.

13.3 Exemplos:

Este script não produz nenhuma saída porque a instrução echo refere-se a uma versão

local da variável $a, e ela não tem nenhum valor assimilado nesse escopo. No PHP, as

variáveis globais precisam ser declaradas globais dentro de uma função se ela vai ser

utilizada naquela função. Agora veja o segundo exemplo usando a palavra chave global.


O script acima imprimirá "3". Declarando $a e $b globais na função, todas as

referências a essas variáveis referem-se a versão global. Não há um limite para o

número de variáveis globais que podem ser manipuladas por uma função.

OBSERVAÇÃO: Existem também as variáveis chamadas de superglobais, que existem

em qualquer escopo e portanto não necessitam usar a palavra chave global. Um

exemplo clássico é a variável superglobal $_POST.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!