Вы находитесь на странице: 1из 98

Como? Quando? Porque?

Surgiu em 1994 criados por Rasmus


Lerdof.

Os valores abaixo referem-se ao nmero


de resultados retornados ao se fazer uma
pesquisa na web pelo nome das
linguagens listadas:
php: 10.210.000.000 resultados
asp: 2.600.000.000 resultados
java: 428.000.000 resultados
ruby: 96.400.000 resultados

Viso Geral
Interao dos softwares
Banco MySql

Cliente/Browser

WEB/PHP

Software Necessarios
Servidor WWW Apache
PHP
Banco de dados MySQL

Notas Importantes
HTML Pr-requisito fundamental
Conceitos de programao
Conhecimento bsico de banco de
dados

Fundamentos do PHP

O que o PHP?
O que pode ser feito com PHP?
Quanto custa o PHP?
Como surgiu o PHP?
PHP x JavaScript
PHP x ASP

O que vem a ser o PHP?


O PHP (Hipertext Preprocessor) uma linguagem de script
voltada para o desenvolvimento de pginas dinmicas para
a internet de fcil uso e aprendizagem, permitindo ao
programador inserir seus comandos diretamente nos
cdigos HTML de uma pgina.
O PHP oferece suporte de conexo com diversos bancos de
dados, tais como: MySql, Oracle, Sybase, Dbase,
PostgreSQL etc.
Outra grande vantagem ao ser comparado com outras
linguagens, tais como: ASP, a possibilidade de ser
executado em diversos sistemas operacionais
(Multiplataforma) como Linux, Windows, Unix, Macintosh,
etc., alm de permitir mudanas de plataforma com
nenhuma ou pouqussimas alteraes no seu cdigo fonte.

Quanto custa o PHP?


O PHP distribudo sobre GPL
( Licena Pblica Geral), ou seja voc
no precisa pagar nada para us-lo.

O que pode ser feito com


PHP?
Inserir dados de um formulrio numa base de dados,
gerar pginas dinamicamente .
PHP tambm tem como uma das caractersticas mais
importantes o suporte a um grande nmero de bancos
de dados. Construir uma pgina baseada em um banco
de dados torna-se uma tarefa extremamente simples
com PHP.
Alm disso, PHP tem suporte a outros servios atravs
de protocolos como IMAP, POP3 e, logicamente, HTTP.

Como surgiu o PHP?


Em 1994, Rasmus Lerdorf desenvolveu algumas ferramentas que
tinham por objetivo monitorar os visitantes de seu site por
intermdio de um contador de acesso, um livro de visitas e outros
pequenos aplicativos. Era o incio do PHP Personal Home Page
tools (ferramentas para home page pessoal).
Um ano depois, Lerdorf aprimorou a linguagem e incorporou ao
PHP um pacote para interpretao de formulrios (FI Form
Interpretation) e algumas ferramentas para acesso a banco de
dados, passando o PHP a ser conhecido como PHP-FI
Democraticamente, Lerdorf abriu o cdigo-fonte de sua
linguagem, dando incio a uma verdadeira avalanche de novos
contribuintes ao PHP-FI.
Em 1997, o PHP-FI ganhou dois novos colaboradores de peso,
Zeev Suraski e Andi Gutmans, que reescreveram o interpretador,
criando a verso 3.0. Deste ponto em diante, o PHP3 deixa de ser
Personal Home Page Tools para se transformar em Hipertext
Preprocessor.
Em maio de 2000, desembarca no mercado a verso 4 do PHP
com muitas novidades, como suporte a sesses, permitindo a

PHP x JavaScript
Uma das diferenas marcantes entre o PHP e o
JavaScript consiste em que os cdigos PHP so
processados no servidor, sendo apenas enviado
ao cliente o HTML puro, ou seja o usurio no tem
acesso aos scripts embutidos no HTML, como
ocorre com o JavaScript que processa os dados no
computador do cliente. Este procedimento pode
ser de grande valia, quando estamos lidando com
dados confidenciais, senhas etc.

PHP x ASP
O PHP multiplataforma, podendo ser
executado em quase todos os sistemas
operacionais, enquanto ASP somente
executado em sistemas operacionais da
Microsoft. Tambm podemos destacar que
o acesso banco de dados por intermdio
do PHP feito de forma mais simples do
que o ASP.
Com relao a velocidade, o PHP
comprovadamente mais rpido que o ASP,
alm de possuir um gerenciamento de
memria superior ao do ASP.

O que so pginas estticas

Pginas dinmicas

Sintaxe bsica para um


programa em PHP
O cdigo PHP fica embutido no prprio HTML. O
interpretador identifica quando um cdigo PHP pelas
seguintes tags:

Como enviar cdigos HTML


dentro de um script PHP

Variveis
As variveis contidas em um programa PHP so
volteis e somente existem enquanto um script
estiver sendo executado, ou seja, ao se mudar de uma
pgina para outra elas deixam de existir, a menos que
sejam transferidas para a prxima pgina, ou
definidas como global;
O valor atribudo a uma varivel pode ser definido
pelo prprio programador, pelo resultado de um
determinado clculo dentro do programa ou por uma
entrada de dados de um formulrio;
Uma varivel pode armazenar somente um valor de
cada vez.

Variveis
Por ser esta linguagem case-sensitive (sensvel a
letras maisculas e minsculas ), sendo A
(maisculo) diferente de a (minsculo), assim uma
varivel de nome Contador diferente de contador .
Em PHP todas as variveis so obrigatoriamente
iniciadas com o smbolo $ (cifro), seguido pelo seu
nome.
Exemplos vlidos : $contador, $_autor, $VALOR
Exemplos no vlidos : $5Valor, $titulo livro ,
$segundo.nome

Atribuio de valor
Para atribuir um valor a uma varivel, voc deve usar o
sinal de =, seguido pelo valor a ser armazenado.
Os valores alfanumricos (strings) a serem armazenados
devem estar sempre entre aspas ()
Valores numricos so armazenados sem o uso das aspas.
Em PHP voc no precisa definir uma varivel para us-la,
como comum em outras linguagens, basta atribuir um
valor diretamente a ela, e a partir deste instante ela ser
automaticamente criada.
Exemplos:

$titulo = Programando em PHP;


$precolivro = 129.30;

PHP com uso de variveis

PHP com uso de variveis


Numricos
Numricos inteiros ou absolutos e nmeros fracionrios,
tambm conhecido como ponto flutuante.
Alfanumricos
Os dados alfanumricos, tambm conhecidos por
strings, contm uma cadeia de caracteres que podem
ser simples letras ou palavras, at frases inteiras.
Exemplos:
$A = 25;
$B = -1234;
$C = 78.56;
$D = -9.3245;
$E = Ol, como vai? ;
$F = 78.999;

Operadores Aritmticos
+
*
/
%

Adio
Subtrao
Multiplicao
Diviso
Resto da diviso

Usando Operadores
Aritmticos

Prioridades dos Operadores


A prioridade adotada nos clculos
em PHP segue de acordo com as
mesmas regras matemticas, ou
seja, os clculos so executados
de acordo com a seguinte
ordem:
Parnteses => diviso => Multiplicao => Adio
=> Subtrao

Trabalhando com variveis


alfanumricas

Armazenando Strings

$A = Ol, Pessoal ! ;

$B = Rua Javali 3456 ;

Diferena entre as aspas


simples e aspas duplas

Seqncia de Escape

\n, \r Nova linha


\t
Tabulao horizontal
\\
A prpria barra ( \ )
\$
O smbolo $
\
Aspa simples
\
Aspa dupla

Concatenar Strings

Como descobrir o
comprimento de uma string

Como eliminar espaos em


branco finais e iniciais de
uma string

Como converter em letras


maiscula ou minscula

Como trabalhar com


substrings

Trabalhando com array

Trabalhando com arrays


<HTML>
<HEAD>
<TITLE> Curso PHP MySql </TITLE>
</HEAD>
<BODY>

<?
// Vetor unidimensional
$hoje = date(w);
$diaSemana[0] = Domingo;
$diaSemana[1] = Segunda-feira;
$diaSemana[2] = Tera-feira;
$diaSemana[3] = Quarta-feira;
$diaSemana[4] = Quinta-feira;
$diaSemana[5] = Sexta_feira;
$diaSemana[6] = Sbado;
echo Hoje : <b> $diaSemana[$hoje] </b>;
?>
</BODY>
</HTML>

Obs: Salvar com a extenso .php

Prato do dia
Element
o

Dia da
semana

Prato do dia

Preo

Domingo

Lasanha a quatro queijos

R$ 12,60

Segunda-feira

Frango ao molho madeira

R$ 10,00

Tera-feira

Arroz grega

R$ 09,40

Quarta-feira

Feijoada moda da casa

R$ 11,20

Quinta-feira

Nhoque paulista

R$ 08,50

Sexta-feira

Bacalhau ao forno

R$ 15,20

Sbado

Feijo branco

R$ 10,00

Hoje Sbado
Nossa sugesto para hoje : Lasanha a quatro
queijos
Preo : 12,20

Listas

Objetos

Booleanos
0 falso (false)
Outro valor 0 verdadeiro (true)
Ex.:
0 == falso
1 == verdadeiro
-2 == verdadeiro

Constantes

Operadores Aritmticos

+
*
/
%
++
--

adio
subtrao
multiplicao
diviso
mdulo
incremento
decremento

Operador Alfanumrico
. Operador de concatenao

Operadores de atribuio

= atribuio simples
+=
atribuio com adio
-= atribuio com subtrao
*= atribuio com multiplicao
/= atribuio com diviso
%= atribuio com mdulo
.= atribuio com concatenao

Usando Operadores de
Atribuio

Formulrios

Toda seo de uma pgina que contenha um formulrio deve sempre


estar entre as tags
<FORM> ...</FORM>
A tag <FORM> contm uma srie de atributos, sendo que os mais
importantes so:
ACTION => Informa ao servidor a pgina que deve ser carregada, assim
que o usurio clicar sobre o boto enviar contido no formulrio.
Method => Este atributo controla como as informaes contidas no
formulrio devem ser enviadas ao servidor.

Existem os mtodos GET e POST

GET => acrescenta URL um ponto de interrogao (?) seguido por


todos os nomes dos campos ex.
http://www.phb.fap.com.br/formulario.php?txtnome=tim

POST => Transmite as informaes de um modo invisivel, ou seja


no as insere na URL mas sim no corpo da requisio HTML, alm de
permitir uma quantidade maior de informaes a ser passada de
uma pgina para outra.

Ex. http://www.phb.fap.com.br/formulario.php, ele no apresenta o


contedo.

Principais controles do HTML que so


usados na coleta de dados em um
formulrio

Caixa de texto de uma linha (TEXT);


Caixa de texto de rolagem (TEXTAREA);
Caixa de seleo (CHECKBOX);
Boto de radio (RADIO);
Menu suspenso (SELECT e OPTION);
Boto de envio (SUBMIT).

Caixa de texto de uma linha


Cdigo HTML

Caixa de texto de uma linha


Cdigo PHP

Boto de opo (RADIO)


Cdigo HTML

<HTML>

<HEAD>
<TITLE> Formulrio com boto de radio </TITLE>
</HEAD>
<BODY>

Qual o seu estado civil ?

<form Method = POST Action = civil.php>


<input type=radio name=opcao value=Casado >Casado<br>
<input type=radio name=opcao value=Solteiro >Solteiro<br>
<input type=radio name=opcao value=Vivo >Vivo<br>
<input type=radio name=opcao value=Separado >Separado<br>
<input type=submit value=Enviar>
</form>
</BODY>
</HTML>

Obs: Salvar com a extenso .htm

Boto de opo (RADIO)


Cdigo PHP

<HTML>
<BODY>

<?
echo Seu estado civil : $opcao ;
?>

</BODY>
</HTML>

Obs: Salvar como civil.php

A instruo condicional IF
<HTML>
<BODY>

<?
$valor = 5;
If ($valor == 5) {
echo A varivel valor : $valor;
}
?>

</BODY>
</HTML>

Obs: Salvar com a extenso .php

Instruo condicional switch


<?
$valor = 2;
switch ( $valor ) {
case 1 :
echo Primeiro valor;
break;
case 2 :
echo Segundo Valor ;
break;
default :
echo Valor maior que 2 ;
break;
}
?>

Operadores Relacionais
op1 == op2
op1 > op2

Verdadeiro se op1 for igual a op2


Verdadeiro se op1 maior que op2

op1 < op2


op1 >= op2

Verdadeiro se op1 menor que op2


Verdadeiro se op1 maior ou igual
a op2
Verdadeiro se op1 menor ou igual
a op2
Verdadeiro se op1 diferente de
op2

op1 <= op2


op1 != op2

Operadores lgicos
&&

and

||

or
!op1

Verdadeiro se uma expresso A e


uma expresso B forem
verdadeira
Verdadeiro se uma expresso A
(AND) e uma expresso B forem
verdadeira
Verdadeiro se uma expresso A ou
uma expresso B forem
verdadeira
Verdadeiro se uma expresso A ou
(OR) uma expresso B forem
verdadeira
Ser considerado verdadeiro se o
valor de op1 for falso

Exerccio

Escreva uma pgina com os seguintes campos


de formulrio:
Nome
Endereo
Idade
Sexo
Escreva um programa em php para receber os
valores do formulrio acima e apresentar na
tela o nome,endereo e verificar se a idade for
maior que 18 anos ,mostrar a mensagem :
Minha idade : XX, caso contrrio a
mensagem : Menor de idade .

Exerccio: Senha
Faa um formulrio com entradas para Nome de
Usurio e Senha e um boto Entrar.
Esse formulrio ser interpretado pela pgina
pagina_protegida.php que dever exibir uma
mensagem de boas vindas para o usurio citando
o seu cargo, ou uma mensagem de erro caso a
senha ou o nome de usurio estejam incorretos.

Trabalhando com Loop


Instruo while e do-while

Trabalhando com Loop

Trabalhando com Loop


Instruo for

Quebra de Fluxo
break
Usado em laos for, while, do...while e switch.
Interrompe imediatamente a execuo do lao.

continue
Semelhante ao break, mas ao invs de sair do
lao, volta pro incio dele.

Exerccio
Utilize uma estrutura de repetio para gerar tags
<Hx>.
Ex.:

Letra H1
Letra H2
Letra H3

Letra H4
Letra H5

Exerccios
Fazer a tabela Prato do Dia utilizando a estrutura
de repetio For.

Exerccio: Formatao via


formulrio
Crie um formulrio com os seguintes itens:
Uma caixa de texto
Trs Checkbox para Itlico, Negrito e
Sublinhado
Um Select com opes de alinhamento
Um select com opes de cor
Uma caixa de texto para digitar o nmero
de repeties.
Um select com nmeros correspondentes
ao tamanho.

Exerccio: Calculadora
Fazer uma calculadora simplificada.
A calculadora possuir:
Dois campos onde sero digitados os termos
Um seletor tipo Radio com as operaes bsicas
Um boto Calcular que ser usado para realizar o
clculo
O resultado deve ser apresentado na mesma
pgina do formulrio.

Funes
1. O emprego das funes permite estruturar
um programa de modo bem mais eficiente e
produtivo, pois garante a criao de
pequenas sees de cdigo que podem ser
reutilizadas a qualquer momento
2. Podemos definir uma funo como sendo um
pequeno programa, inserido em seu
programa principal, que pode ser chamado a
qualquer instante para executar um
determinada operao.

Sintaxe para declarao de


funes
function nome_da_funo($arg1, $arg2, $arg3)
{
Comandos;
...
return <valor de retorno>;
}

Retorno
No obrigatrio
Pode-se retornar qualquer tipo de dados, inclusive
vetores.
Sintaxe:
return valor;

Argumentos
Devem ser declarados dentro dos parnteses
No precisa especificar o tipo
Ex.:
function imprime($texto)
{
echo $texto;
}
imprime("teste de funes");

Passagem de parmetros por


referncia
Utiliza-se o caracter & antes do nome do
parmetro.
Pode ser utilizado na declarao da funo
ou na chamada da funo.
Ex.:
function mais5(&$num1, $num2)
{
$num1 += 5;
$num2 += 5;
}
mais5($a, &$b);

Argumentos com valores prdefinidos


Ex.:
function teste($php = "testando")
{
echo $php;
}
teste(); // imprime "testando"
teste("outro teste"); // imprime "outro teste"

Escopo
$php = "Testando";
function Teste()
{
echo $php;
}
Teste();

$php = "Testando";
function Teste()
{
global $php;
echo $php;
}
Teste();

Funes - Exemplos
<HTML>
<BODY>

<?
function comissao($valor)
{
$valor = $ valor * 0.06;
return $valor;
}
echo Ana vendeu R$ 25000, sua comisso : R$ . comissao(25000);
echo <br>;
echo Carolina vendeu R$ 34680, sua comisso : R$ . comissao(34680);
}
?>

</BODY>
</HTML>

Obs: Salvar com a extenso .php

Exerccio: Cumprimento
Fazer uma funo que retorna uma string de
cumprimento: Bom dia, boa tarde, boa noite
dependendo da hora em que ele acessa a pgina.

Dica: A funo date(H) retornar a hora do dia.

Exerccio: Data por extenso


Fazer uma funo que retorne a data atual no
formato do exemplo abaixo:
Domingo, 29 de abril de 2006

Dica: Para inicializar os arrays usar listas.


Ex.: $x = array(1 => valor1, 2 => valor2...)

Variveis
Modificador Static
Cria uma varivel local, porm seu valor no ser
perdido ao sair da funo.
Ex.:

function Teste()
{
$a = 0;
echo $a;
$a++;
}

function Teste()
{
static $a = 0;
echo $a;
$a++;
}

Variveis Variveis
$a = "teste";
$$a = "Mauricio Vivas";

O exemplo acima e equivalente ao seguinte:


$a = "teste";
$teste = "Mauricio Vivas";

Variveis de Ambiente
Ex.:
$_SERVER[PHP_SELF]
$_SERVER[REQUEST_URI]

phpinfo( );

Obter o tipo da varivel


gettype($x);
Retorna: "integer", "double", "string", "array",
"object" e "unknown type"

is_int( ), is_integer( ), is_real( ), is_long( ), is_float( ),


is_string( ), is_array( ) e is_object( )

Outras operaes
unset($x); //Destri a varivel
isset($x); //Verifica se a varivel existe
empty($x); //Verifica se a varivel tem um
valor diferente de 0 ou ;

Classes e Objetos
class Nome_da_classe {
var $variavel1;
var $variavel2;
function funcao1 ($parmetro) {
/* === corpo da funo === */
}
}

Objetos
Sintaxe para criao de objetos:
$varivel = new nome_da_classe;
Para utilizar as funes definidas na classe, deve
ser utilizado o operador "->", como no exemplo:
$variavel->funcao1();

A varivel $this
Quando for necessrio fazer chamadas a funes do
prprio objeto utilizamos a varivel $this.

Exemplo usando $this

class conta
{

var $saldo;
function saldo() {
return $this->saldo;
}
function credito($valor) {
$this->saldo += $valor;
}
}
$minhaconta = new conta;
echo $minhaconta->saldo() . '<br>';
$minhaconta->credito(50);
echo $minhaconta->saldo(); // retorna 50

Sub-Classes
Exemplo de subclasses:
class novaconta extends conta
{
var $numero;
function numero() {
return $this->numero;
}
}
$outraconta = new novaconta;
$outraconta->numero = 123456;
echo $outraconta->numero();

Construtores
Um construtor uma funo definida na classe que
automaticamente chamada no momento em
que a classe instanciada

Exemplo de Construtores
class conta {
var $saldo;
function conta () {
$this->saldo = 0;
}
function saldo() {
return $this->saldo;
}
function credito($valor) {
$this->saldo += $valor;
}
}

Cookies
Cookies so mecanismos para armazenar e
consultar informaes nos browsers dos visitantes
da pgina. O PHP atribui cookies utilizando a
funo setcookie, que deve ser utilizada antes da
tag <html> numa pgina.
No use cookies para acessar informaes sigilosas.
Os dados dos cookies so armazenados no
diretrio de arquivos temporrios do visitante,
sendo facilmente visualizado por pessoas mal
intencionadas.
Ateno para a opo "aceitar cookies" que pode
ser desativada a qualquer momento pelo visitante.

setcookie
Setcookie("nome_cookie","seu_valor","tempo_vida")

Cookies: Exemplo
<?
$valor = 'Texto armazenado no cookie';
setcookie("TesteCookie", $valor, time()+3600);
?>
<?
echo $_COOKIE["TesteCookie"];
?>

A partir de agora qualquer pgina do site


ter acesso a $_COOKIE["TesteCookie"];

Sesses
Sesses so mecanismos parecidos com os cookies.
Suas diferenas so que sesses so armazenadas
no prprio servidor e no expiram.
Cookie => Computador do usurio
Session => Servidor

Sesses: Exemplo 1.1


<?
session_start();
?>
<?
echo 'Bem vindo pagina 1';
$_SESSION[cor'] = 'verde';
$_SESSION['animal'] = 'gato';
$_SESSION[acesso'] = time();
echo '<br><a href="pagina2.php">Pgina
2</a>';
?>

Sesses: Exemplo 1.2


<?
session_start();
?>
<?
echo 'Bem vindo a pagina 2<br>';
echo $_SESSION['animal'] . '<br>'; // gato
echo $_SESSION[cor']; // verde
echo date('d/m/Y H:i:s', $_SESSION[acesso']);
echo '<br /><a href="pagina1.php">Pagina
1</a>';
?>

Sesses: Exemplo 2.1


Contador de visitas
<?
session_start();
if (!isset($_SESSION['contador'])) {
$_SESSION['contador'] = 0;
} else {
$_SESSION['contador']++;
}
?>

Sesses: Exemplo 2.2


<?php
session_start();
unset($_SESSION['contador']);
?>

Sesses: Exemplo 3.1


<?
session_start();
$autoriza = 0;
if (isset($_SESSION['usuario'])) {
$autoriza = 1;
else {
$usuario = $_GET['usuario'];
$senha = $_GET['senha'];
if (($usuario == 'fulano') && ($senha == '123'))
$autoriza = 1;
}
if (!$autoriza)
echo "Voc deve fazer login.";
else
echo "Voc acessou a pgina com sucesso";
?>

Include e Require
A funo require() pe o contedo de um outro
arquivo no arquivo php atual, antes de ser
executado. Quando o interpretador do PHP ler
este arquivo, ele encontrar todo o contedo
dos "requires" adicionado no arquivo corrente.
A funo include() semelhante funo
require(), com a diferena que o cdigo do
arquivo includo processado em tempo de
execuo,

Exemplos
require ("arquivo.php");

include("arquivo.php");

BANCO DE DADOS

MySQL

Вам также может понравиться