Docsity
Docsity

Prepare-se para as provas
Prepare-se para as provas

Estude fácil! Tem muito documento disponível na Docsity


Ganhe pontos para baixar
Ganhe pontos para baixar

Ganhe pontos ajudando outros esrudantes ou compre um plano Premium


Guias e Dicas
Guias e Dicas


Tutorial php avançado, Notas de estudo de Informática

O presente trabalho tem por objetivo relatar as atividades desenvolvidas durante a realização do projeto supervisionado do aluno Maurício Vivas de Souza Barreto, orientado pelo professor Giovanny Lucero. O projeto consistiu numa pesquisa sobre a linguagem PHP ? uma linguagem de script voltada para a construção de home-pages dinâmicas, que é executada no servidor http. Para a complementação do estudo sobre a linguagem foi desenvolvida uma aplicação, como exemplo da utilização da linguagem PHP.

Tipologia: Notas de estudo

Antes de 2010

Compartilhado em 05/02/2010

gustavo-dias-11
gustavo-dias-11 🇧🇷

4.7

(7)

46 documentos

1 / 70

Toggle sidebar

Esta página não é visível na pré-visualização

Não perca as partes importantes!

bg1
UNIVERSIDADE FEDERAL DE SERGIPE
CCET - CENTRO DE CIÊNCIAS EXATAS E TECNOLOGIA
DCCE - DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO E
ESTATÍSTICA
Projeto Supervisionado
Tutorial da linguagem PHP
por Maurício Vivas de Souza Barreto
Professor Orientador:
Giovanny Lucero
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23
pf24
pf25
pf26
pf27
pf28
pf29
pf2a
pf2b
pf2c
pf2d
pf2e
pf2f
pf30
pf31
pf32
pf33
pf34
pf35
pf36
pf37
pf38
pf39
pf3a
pf3b
pf3c
pf3d
pf3e
pf3f
pf40
pf41
pf42
pf43
pf44
pf45
pf46

Pré-visualização parcial do texto

Baixe Tutorial php avançado e outras Notas de estudo em PDF para Informática, somente na Docsity!

UNIVERSIDADE FEDERAL DE SERGIPE
CCET - CENTRO DE CIÊNCIAS EXATAS E TECNOLOGIA
DCCE - DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO E
ESTATÍSTICA

Projeto Supervisionado

Tutorial da linguagem PHP

por Maurício Vivas de Souza Barreto [email protected] [email protected]

Professor Orientador:

Giovanny Lucero

UNIVERSIDADE FEDERAL DE SERGIPE

CENTRO DE CIÊNCIAS EXATAS E TECNOLOGIA DEPARTAMENTO DE ESTATÍSTICA E INFORMÁTICA

Projeto de Final de Curso

Submetido a uma banca examinadora

composta por:

________________________________________

Professor Giovanny Lucero

________________________________________

Professora Ana Rosimere

________________________________________

Professor Leonardo Nogueira Matos

Índice

Resumo

O presente trabalho tem por objetivo relatar as atividades desenvolvidas durante a realização do projeto supervisionado do aluno Maurício Vivas de Souza Barreto, orientado pelo professor Giovanny Lucero. O projeto consistiu numa pesquisa sobre a linguagem PHP – uma linguagem de script voltada para a construção de home-pages dinâmicas, que é executada no servidor http. Para a complementação do estudo sobre a linguagem foi desenvolvida uma aplicação, como exemplo da utilização da linguagem PHP. A aplicação desenvolvida trata-se do preenchimento do formulário para a GED – Gratificação de Estímulo à Docência. Através do sistema desenvolvido, qualquer usuário cadastrado poderá preencher os formulários do GED através de um navegador http, e ao final do período poderá imprimir o formulário preenchido.

1. Introdução

O que é PHP?

PHP é uma linguagem que permite criar sites WEB dinâmicos, possibilitando uma interação com o usuário através de formulários, parâmetros da URL e links. A diferença de PHP com relação a linguagens semelhantes a Javascript é que o código PHP é executado no servidor, sendo enviado para o cliente apenas html puro. Desta maneira é possível interagir com bancos de dados e aplicações existentes no servidor, com a vantagem de não expor o código fonte para o cliente. Isso pode ser útil quando o programa está lidando com senhas ou qualquer tipo de informação confidencial. O que diferencia PHP de um script CGI escrito em C ou Perl é que o código PHP fica embutido no próprio HTML, enquanto no outro caso é necessário que o script CGI gere todo o código HTML, ou leia de um outro arquivo.

O que pode ser feito com PHP?

Basicamente, qualquer coisa que pode ser feita por algum programa CGI pode ser feita também com PHP, como coletar dados de um formulário, gerar páginas dinamicamente ou enviar e receber cookies. PHP também tem como uma das características mais importantes o suporte a um grande número de bancos de dados, como dBase, Interbase, mSQL, mySQL, Oracle, Sybase, PostgreSQL e vários outros. Construir uma página baseada em um banco de dados torna-se uma tarefa extremamente simples com PHP. Além disso, PHP tem suporte a outros serviços através de protocolos como IMAP, SNMP, NNTP, POP3 e, logicamente, HTTP. Ainda é possível abrir sockets e interagir com outros protocolos.

Como surgiu a linguagem PHP?

A linguagem PHP foi concebida durante o outono de 1994 por Rasmus Lerdorf. As primeiras versões não foram disponibilizadas, tendo sido utilizadas em sua home-page apenas para que ele pudesse ter informações sobre as visitas que estavam sendo feitas. A primeira versão utilizada por outras pessoas foi disponibilizada em 1995, e ficou conhecida como “ P ersonal H ome P age Tools” (ferramentas para página pessoal). Era composta por um sistema bastante simples que interpretava algumas macros e alguns utilitários que rodavam “por trás” das home-pages : um livro de visitas, um contador e algumas outras coisas. Em meados de 1995 o interpretador foi reescrito, e ganhou o nome de PHP/FI , o “FI” veio de um outro pacote escrito por Rasmus que interpretava dados de formulários HTML ( F orm I nterpreter). Ele combinou os scripts do pacote Personal Home Page Tools com o FI e adicionou suporte a mSQL, nascendo assim o PHP/FI, que cresceu bastante, e as pessoas passaram a contribuir com o projeto. Estima-se que em 1996 PHP/FI estava sendo usado por cerca de 15. sites pelo mundo, e em meados de 1997 esse número subiu para mais de 50.000. Nessa época houve uma mudança no desenvolvimento do PHP. Ele deixou de ser um projeto de Rasmus com contribuições de outras pessoas para ter uma equipe de desenvolvimento mais organizada. O interpretador foi reescrito por Zeev Suraski e Andi Gutmans , e esse novo interpretador foi a base para a versão 3. Atualmente o uso do PHP3 vem crescendo numa velocidade incrível, e já está sendo desenvolvida a versão 4 do PHP.

Toda variável em PHP tem seu nome composto pelo caracter $ e uma string, que deve iniciar por uma letra ou o caracter “_”. PHP é case sensitive , ou seja, as variáveis $vivas e $VIVAS são diferentes. Por isso é preciso ter muito cuidado ao definir os nomes das variáveis. É bom evitar os nomes em maiúsculas, pois como veremos mais adiante, o PHP já possui alguma variáveis pré-definidas cujos nomes são formados por letras maiúsculas.

Comentários

Há dois tipos de comentários em código PHP:

Comentários de uma linha:

Marca como comentário até o final da linha ou até o final do bloco de código PHP – o que vier antes. Pode ser delimitado pelo caracter “#” ou por duas barras ( // ).

Exemplo:

Comentários de mais de uma linha: Tem como delimitadores os caracteres “/” para o início do bloco e “/” para o final do comentário. Se o delimitador de final de código PHP ( ?> ) estiver dentro de um comentário, não será reconhecido pelo interpretador.

Exemplos:

*/

Aprendendo PHP

Utilizando formulários HTML

Ao clicar num botão “Submit” em um formulário HTML as informações dos campos serão enviadas ao servidor especificado para que possa ser produzida uma resposta. O PHP trata esses valores como variáveis, cujo nome é o nome do campo definido no formulário. O exemplo a seguir mostra isso, e mostra também como o código PHP pode ser inserido em qualquer parte do código HTML:

Aprendendo PHP

"; ?>

Ao salvar o arquivo acima e carregá-lo no browser, o usuário verá apenas um formulário que contém um espaço para digitar o texto, como visto na figura 01. Ao digitar um texto qualquer e submeter o formulário, a resposta, que é o mesmo arquivo PHP (indicado pela constante $PATH_INFO, que retorna o nome do arquivo) será como na figura 02:

figura 01 figura 02

Isso ocorre porque o código PHP testa o conteúdo da variável $texto. Inicialmente ele é uma string vazia, e por isso nada é impresso na primeira parte. Quando algum texto é digitado no formulário e submetido, o PHP passa a tratá-lo como uma variável. Como no formulário o campo possui o nome “texto”, a variável com seu conteúdo será $texto. Assim, no próximo teste o valor da variável será diferente de uma string vazia, e o PHP imprime um texto antes do formulário.

Interagindo com o browser

PHP também permite interagir com informações do browser automaticamente. Por exemplo, o script a seguir mostra informações sobre o browser do usuário. As figuras 03 e 04 mostram o resultado visto no Netscape Communicator e o Microsoft Internet Explorer, respectivamente.

Aprendendo PHP

figura 03 figura 04

Observe que o resultado mostra características de cada browser, como a versão, e no caso do Communicator até o idioma (“en”). Com isso, se você criar uma página com recursos disponíveis somente no Internet Explorer, por exemplo, pode esconder o código dos outros browsers, com um código semelhante ao seguinte:

Aprendendo PHP

if (strpos($HTTP_USER_AGENT,"MSIE 5") != 0) {

identificador da conexão estabelecida e deverá ser armazenado numa variável para ser utilizado depois. No nosso exemplo, temos como servidor de banco de dados a mesma máquina que roda o servidor http, como login o usuário “root” e senha “phppwd”:

$conexao = mysql_connect(“localhost”, “root”, “phppwd”);

Assim, se a conexão for bem sucedida (existir um servidor no endereço especificado que possua o usuário com a senha fornecida), o identificador da conexão fica armazenado na variável $conexão.

Seleção do banco de dados Uma vez conectado, é preciso selecionar o banco de dados existente no servidor com o qual desejamos trabalhar. Isso é feito através da função int mysql_select_db , que possui a seguinte sintaxe:

int mysql_select_db(string /nome_base/, int / conexao/ );

O valor de retorno é 0 se o comando falhar, e 1 em caso de sucesso. O nome da base de dados a selecionar é o primeiro parâmetro fornecido, seguido pelo identificador da conexão. Se este for omitido, o interpretador PHP tentará utilizar a última conexão estabelecida. Recomenda-se sempre explicitar esse valor, para facilitar a legibilidade do código. No nosso exemplo, a base de dados a ser selecionada possui o nome “ged”:

mysql_select_db(“ged”, $conexao);

Após a execução desse comando qualquer consulta executada para aquela conexão utilizará a base de dados selecionada.

Execução de queries SQL Após estabelecida a conexão e selecionada a base de dados a ser utilizada, quase toda a interação com o servidor mySQL pode ser feita através de consultas

escritas em SQL (Structured Query Language), com o comando mysql_query , que utiliza a seguinte sintaxe: int mysql_query(string consulta, int [conexao] );

O valor de retorno é 0 se falhar ou 1 em caso de sucesso. Sucesso aqui significa que a consulta está sintaticamente correta e foi executada no servidor. Nenhuma informação sobre o resultado é retornada deste comando, ou até mesmo se o resultado é o esperado. No caso da consulta ser um comando SELECT, o valor de retorno é um valor interno que identifica o resultado, que poderá ser tratado com a função mysql_result() e outras. A string query não deve conter ponto-e-vírgula no

final do comando, e o identificador da conexão é opcional. Vamos criar uma tabela como exemplo: $cria = “CREATE TABLE exemplo (codigo INT AUTO_INCREMENT PRIMARY KEY, nome CHAR(40), email CHAR(50))”;

mysql_query($cria, $conexao); Agora vejamos como ficou o código completo para executar uma query SQL numa base de dados mySQL, com um exemplo que cria uma tabela chamada exemplo e adiciona alguns dados:

$conexao = mysql_connect(“localhost”, “root”, “phppwd”); mysql_select_db(“ged”, $conexao); $cria = “CREATE TABLE exemplo (codigo INT AUTO_INCREMENT PRIMARY KEY, nome CHAR(40), email CHAR(50))”;

$insere1 = “INSERT INTO exemplo (nome,email) VALUES (“Mauricio Vivas”,”[email protected]”);

$insere2 = “INSERT INTO exemplo (nome,email) VALUES (“Jose da Silva”,”[email protected]”);

$insere3 = “INSERT INTO exemplo (nome,email) VALUES (“Fernando Henrique Cardoso”,”[email protected]”);

$insere4 = “INSERT INTO exemplo (nome,email) VALUES (“Bill Clinton”,”[email protected]”);

mysql_query($cria, $conexao); mysql_query($insere1, $conexao); mysql_query($insere2, $conexao); mysql_query($insere3, $conexao); mysql_query($insere4, $conexao);

se use uma outra função, como por exemplo mysql_fetch_row, que possui a seguinte sintaxe:

array mysql_fetch_row(int result);

A variável resultado é o identificador da memória de resultados, obtido como retorno da função mysql_query. O resultado produzido por esta função é de retirar a primeira linha da memória de resultados, se houver, e colocá-la num array. Assim torna-se mais fácil tratar um resultado com várias linhas, e sem utilizar os nomes dos campos na rotina de tratamento do resultado:

$consulta = “SELECT nome, email FROM exemplo”; $resultado = mysql_query($consulta, $conexao); echo "\n"; echo "Nomee-mail\n"; while ($linha = mysql_fetch_row($resultado)) { printf("$linha[0]”); printf("$linha[1]”); } echo "\n";

O código acima irá imprimir todos os registros da tabela exemplo numa tabela html. Se o programador desejar “pular” alguma(s) linha(s) do resultado, poderá utilizar a função mysql_data_seek , que tem por objetivo definir qual será a próxima linha da memória de resultados a ser impressa. Sua sintaxe é:

int mysql_data_seek(int resultado, int linha); Sendo resultado o identificador do resultado e linha o numero da linha. Retorna 0 em caso de falha, e um valor diferente de zero em caso de sucesso. Existem diversas outras funções para o tratamento de resultados, que armazenam as linhas em arrays e objetos, assim como outras funções para administrar o banco de dados, mas como este documento trata-se de uma introdução, inicialmente não tratará tópicos mais avançados.

4. Tipos

Tipos Suportados

PHP suporta os seguintes tipos de dados:

  • Inteiro
  • Ponto flutuante
  • String
  • Array
  • Objeto

PHP utiliza checagem de tipos dinâmica, ou seja, uma variável pode conter valores de diferentes tipos em diferentes momentos da execução do script. Por este motivo não é necessário declarar o tipo de uma variável para usá-la. O interpretador PHP decidirá qual o tipo daquela variável, verificando o conteúdo em tempo de execução. Ainda assim, é permitido converter os valores de um tipo para outro desejado, utilizando o typecasting ou a função settype (ver adiante).

Inteiros (integer ou long) Uma variável pode conter um valor inteiro com atribuições que sigam as seguintes sintaxes:

$vivas = 1234; # inteiro positivo na base decimal $vivas = -234; # inteiro negativo na base decimal $vivas = 0234; # inteiro na base octal-simbolizado pelo 0

equivale a 156 decimal

$vivas = 0x34; # inteiro na base hexadecimal(simbolizado

pelo 0x) – equivale a 52 decimal.

A diferença entre inteiros simples e long está no número de bytes utilizados para armazenar a variável. Como a escolha é feita pelo interpretador PHP de maneira transparente para o usuário, podemos afirmar que os tipos são iguais.