SlideShare uma empresa Scribd logo
Universidade de Aveiro Mestrado em Comunicação  Multimédia 1º Semestre 2009/2010   Tecnologias Dinâmicas para a Internet Projecto 3  O PHP     Docentes: Profs. Benjamim Júnior e Telmo Silva Discentes: Henrique Ribeiro, Ivan Terra, João Mourão, Joaquim Vieira, Pedro Dias.    
A linguagem PHP "PHP (Hypertext Preprocessor) é uma linguagem livre e muito utilizada para gerar conteúdo dinâmico na World Wide Web.  O PHP é considerada uma poderosa linguagem de scripting que actua apenas no lado do servidor (Server-Side).  Quando um utilizador visita a página PHP, o servidor web processa o código PHP. Depois determina que partes é que precisa mostrar ao utilizador (conteúdo e imagens) e que partes necessita de esconder (Operações de ficheiros, cálculos matemáticos, etc.). Posteriormente traduz o PHP numa página HTML e  envia-a para o browser do utilizador. A linguagem PHP foi concebida 1994 por Rasmus Lerdorf e a primeira versão utilizada por utilizadores foi disponibilizada em 1995, e ficou conhecida como "Personal Home Page Tools" (ferramentas para página pessoal).  A versão mais actual é a 5.3 que foi lançada em Junho de 2009 e vem crescendo numa velocidade incrível, e já está a ser desenvolvida a versão 6 do PHP.
Vantagens É uma linguagem gratuita (Open Source). É veloz e robusta (o ASP tende a deixar o servidor mais lento, o PHP raramente causa este problema.). É estruturada e de orientação a objectos. De fácil ligação a bases de dados. (Ex: SQL) Funciona em qualquer plataforma onde for possível instalar um servidor Web. Há também versões para Linux, FreeBSD, Solaris, Windows NT, IRIX, HP-UX. A sua sintaxe é familiar, isto é, grande parte da sua sintaxe é "aproveitada" do C, Java e Perl com um pequeno conjunto de funcionalidades específicas. É fácil obter ajuda, existem muitos sites com “helps” Possui muitas  funções  e funciona com muitas tecnologias (BD, XML, etc.). Muitas pessoas o utilizam pois possibilita boas oportunidades no mundo do trabalho.
Desvantagens Possui alguma incompatibilidade entre versões, isto é, falta de padronização. Por exemplo, um comando que funciona numa determinada versão pode não funcionar noutra Possui documentação incompleta, pois como a maioria dos programas Open Source, frequentemente os recursos surgem antes de estarem documentados. O site da organização ajuda bastante, mas é comum encontrar recursos sem documentação e, principalmente, sem exemplos que possam ajudar o aprendiz. Segundo os especialistas, a utilização de Servlets e do JSP deixa os códigos mais seguros do que o PHP pois são pré-compilados.
Sintaxe Um script em PHP começa sempre com  <?php  E termina sempre com  ?>  No fim de cada instrução usa se o “;” Echo e print para imprimir os resultados e “//”para comentar uma linha de código. Exemplo: <?php echo(&quot;Olá TDI&quot;);  ?>
Variáveis As variáveis no PHP são representadas por um cifrão ($) seguido pelo nome da variável. Os nomes de variável no PHP fazem distinção entre maiúsculas e minúsculas (case sensitive). <?php  $a = 0;  //A variável &quot;a&quot; é inicializada com o valor &quot;0&quot;    ?> As variáveis locais não necessitam de ser declaradas e devem ser inicializadas. As variáveis definidas dentro de uma função são locais e não podem ser acedidas fora da função tal como as variáveis definidas fora de uma função também não podem ser acedidas dentro da mesma. Para que seja possível aceder, dentro de uma função, a funções definidas fora desta é necessário definir a variável como global dentro da função
Variáveis Super Globais Superglobais são variáveis nativas ou pré-definidas no PHP, o que significa que elas estão disponíveis em todo o script. Não há necessidade de fazer Global “ $variavel;” para lhes aceder dentro de funções.  Estas variáveis super globais são:  $GLOBALS  $_SERVER  $_GET  $_POST  $_FILES  $_COOKIE  $_SESSION  $_REQUEST  $_ENV
Get Os dados passam entre páginas, embebidas no URL. Os dados estão visível para o utilizador. Exemplo: http://www.tdipt/index.php?nome=alunos  (Neste caso a variável nome é transmitida com o valor “alunos”). Este tipo de envio tem algumas desvantagens como: A tecnologia está mais exposta (Reconhecimento visual) É fácil encontrar os parâmetros. O tamanhos dos dados a enviar está condicionado pelo tamanho do URL Vantagens: Este tipo de URL é portável – é possível fazer o bookmark da página, enviar por email, etc.
Post No caso do POST podemos passar valores através de formulários  Os dados passam entre páginas de modo invisível para o utilizador. Este tipo de envio tem algumas desvantagens como: Problemas com o refresh em alguns browsers. Vantagens: Não existe tamanho limite para os dados a enviar.  A informação transmitida é invisível ao utilizador, proporcionando maior segurança na transmissão dos dados.
Cookies As  cookies  são simples e pequenos pedaços de dados armazenados no sistema operativo do utilizador normalmente num ficheiro ( &quot;cookies.txt&quot; ) ou num directório (&quot;C:ocumentsandSettingsseridookies&quot; ) em ficheiros individuais. Permitem a utilização de dados guardados numa visita anterior ao site.  Nota: muitas vezes as cookies não armazenam os dados que queremos seguir mas sim um ID que referencia os dados armazenados no servidor .
Sessions As sessões (sessions) podem ser usadas para guardar informações relativas à autenticação de utilizadores para prevenir acesso de pessoas não autorizadas a determinada página e que poderão ser acedidos a partir de qualquer página do nosso site uma vez que se trata de uma variável &quot;super global&quot;.
Interacção no PHP PHP é uma linguagem que possibilita a interacção com outras linguagens. Ex: HTML JavaScript SQL XML …
Validações e Expressões Regulares  SQL Injection
Validações e Expressões Regulares Todos os dados introduzidos pelo utilizadores devem sempre ser verificados pelo servidor , para garantir uma maior segurança do site. As expressões regulares servem para verificar se uma string tem, ou não, determinados caracteres, serve para validar por exemplo um email.
SQL Injection ou injecção de SQL é uma técnica de invasão de sistemas que se tornou famosa na Internet que pode ser utilizada em qualquer linguagem de programação. Ocorre quando o atacante consegue inserir uma série de instruções SQL dentro de uma 'query' através da manipulação da entrada de dados de uma aplicação.  Sql Injection
Uma  framework  é uma estrutura de suporte definida em que um outro projecto de software pode ser organizado e desenvolvido. Um framework pode incluir programas de suporte, bibliotecas de código, linguagens de script e outros softwares para ajudar a desenvolver e juntar diferentes componentes de um projecto de software. Frameworks são projectados com a intenção de facilitar o desenvolvimento de software, habilitando designers e programadores a gastarem mais tempo determinando nas exigências do software do que com detalhes tediosos de baixo nível do sistema. Frameworks
Zend Framework: uma colecção de arquivos com várias funções de base de dados, RSS, AJAX, E-mail, PDF e Busca. Foi desenvolvida pelos criadores do PHP e tem um excelente documentação sobre o assunto Magpie RSS: Framework que permite que se carregue feeds RSS no site de maneira simples. Simples e rápido de usar;   CakePHP: é um Framework escrito em PHP que tem como principais objectivos oferecer uma estrutura que possibilite aos programadores de PHP de todos os níveis desenvolverem aplicações robustas rapidamente, sem perder flexibilidade Exemplos Frameworks
CMS – Content Managment System ou, em português, Sistema de Gestão de Conteúdo, são plataformas web pré-programadas usadas para a construção de sites, portais ou intranets dinâmicos. A grande vantagem no uso destas plataformas é o de permitirem que o conteúdo do site possa ser modificado rapidamente, sem alteração de qualquer linha de código e em qualquer altura, sendo apenas necessário um computador ligado à Internet.  Estes sistemas de gestão de conteúdos têm duas áreas diferentes: frontend e backend. O frontend é a zona do site acessível a todos os visitantes, é o que consultamos quando digitamos o endereço do site na Internet. O backend é a parte administrativa do mesmo. Apenas os gestores autorizados (através do nome de utilizador e palavra-chave) conseguem entrar. Dentro do backend é também possível criar zonas restritas para os diferentes tipos de utilizadores.  CMS
Drupal: O Drupal é uma framework modular (organiza-se por módulos) e um sistema de Gestão de Conteúdos (CMS) escrito em PHP. O Drupal permite criar e organizar conteúdo, manipular  a aparência, automatizar tarefas administrativas, e definir permissões e papéis para utilizadores e colaboradores.  Por ser desenvolvido em PHP, o Drupal é independente do sistema operativo, no entanto requer um servidor HTTP compatível com PHP e um Servidor de Base de Dados para funcionar.  O Drupal é normalmente descrito como uma Framework de Gestão de Conteúdos, pois além de oferecer as funcionalidades básicas de um CMS também tem implementadas uma série de APIs robustas e apresenta uma estrutura modular que facilita o desenvolvimento de módulos complexos.  O Drupal é um software livre e de código aberto, por isso qualquer um pode ver como o Drupal funciona, fazer modificações, redistribuir com ou sem as modificações, além de poder propor e participar em mudanças no projecto principal. Tudo isso de acordo com a licença GPL, da GNU. A comunidade Drupal é activa e prestável. Existem vários módulos com funções importantes que foram criados por utilizadores comuns.  Joomla: Desenvolvido a partir do Mambo o Joomla escrito em PHP e pode ser executado tanto num servidor Web Apache como num IIS e base de dados MySQL.É um projecto de código aberto (licença GNU/GPL) e a sua última versão estável é a 1.5.14 (em 30 de Julho de 2009).  Wordpress: Trata-se um sistema de gestão de conteúdos na web, escrito em PHP e recorrendo a base de dados MySQL, especialmente usado para a criação de blogs. O WordPress foi criado a partir do já desaparecido b2/cafelog e é hoje, junto com o Movable Type, o mais popular na criação de Blogs. As causas do seu rápido crescimento são, entre outras, seu tipo de licença (de código aberto), a facilidade de uso e suas características como gestor de conteúdos. Criado por Ryan Boren e Matthew Mullenweg, é distribuído sob a GNU General Public sendo de uso gratuito.  Exemplos CMS
http://www.php.net  http://www.w3schools.com/PHP/ http://apostilas.fok.com.br/manual-do-php/index.php  http://pt.wikipedia.org/wiki/Drupal  http://www.webdesignerdepot.com/2009/01/how-to-choose-the-right-cms/  http://www.w3.org/TR/soap12-part0/ http://www.w3.org/TR/soap12-part1/ http://www.w3.org/TR/soap12-part2/ Referencias

Mais conteúdo relacionado

Mais procurados

Curso de ReactJS
Curso de ReactJSCurso de ReactJS
Curso de ReactJS
Gustavo Lopes
 
Aula 02 - Introdução ao PHP
Aula 02 - Introdução ao PHPAula 02 - Introdução ao PHP
Aula 02 - Introdução ao PHP
Daniel Brandão
 
Estrutura de Dados Apoio (Complexidade de Algoritmos)
Estrutura de Dados Apoio (Complexidade de Algoritmos)Estrutura de Dados Apoio (Complexidade de Algoritmos)
Estrutura de Dados Apoio (Complexidade de Algoritmos)
Leinylson Fontinele
 
Aula 1 - Introdução a POO
Aula 1 -  Introdução a POOAula 1 -  Introdução a POO
Aula 1 - Introdução a POO
Daniel Brandão
 
Dns
DnsDns
Slide verbos - 6 anos.pdf
Slide verbos - 6 anos.pdfSlide verbos - 6 anos.pdf
Slide verbos - 6 anos.pdf
geroboaosouza
 
Algoritmos e Estrutura de Dados - Aula 02
Algoritmos e Estrutura de Dados - Aula 02Algoritmos e Estrutura de Dados - Aula 02
Algoritmos e Estrutura de Dados - Aula 02
thomasdacosta
 
Processos de Desenvolvimento de Software - teoria e prática
Processos de Desenvolvimento de Software - teoria e práticaProcessos de Desenvolvimento de Software - teoria e prática
Processos de Desenvolvimento de Software - teoria e prática
Ralph Rassweiler
 
DDOS
DDOSDDOS
Java: Heranca e polimorfismo
Java: Heranca e polimorfismoJava: Heranca e polimorfismo
Java: Heranca e polimorfismo
Arthur Emanuel
 
Banco De Dados
Banco De DadosBanco De Dados
Banco De Dados
Robson Silva Espig
 
Figuras de linguagem
Figuras  de  linguagemFiguras  de  linguagem
Figuras de linguagem
Leila nny
 
JavaScriptユーティリティライブラリの紹介
JavaScriptユーティリティライブラリの紹介JavaScriptユーティリティライブラリの紹介
JavaScriptユーティリティライブラリの紹介
Yusuke Hirao
 
A Linguagem sql
A Linguagem sqlA Linguagem sql
A Linguagem sql
Centro Paula Souza
 
Method Overloading in Java
Method Overloading in JavaMethod Overloading in Java
Method Overloading in Java
Sonya Akter Rupa
 
Verbos 2
Verbos 2Verbos 2
Verbos 2
Aportuguesando
 
Java interfaces & abstract classes
Java interfaces & abstract classesJava interfaces & abstract classes
Java interfaces & abstract classes
Shreyans Pathak
 
Vetores e Matrizes em C.
Vetores e Matrizes em C.Vetores e Matrizes em C.
Vetores e Matrizes em C.
SchoolByte
 
Aula 6 aed - registros
Aula 6   aed - registrosAula 6   aed - registros
Aula 6 aed - registros
Elaine Cecília Gatto
 
Apostila Lógica de Programação
Apostila Lógica de ProgramaçãoApostila Lógica de Programação
Apostila Lógica de Programação
Ricardo Terra
 

Mais procurados (20)

Curso de ReactJS
Curso de ReactJSCurso de ReactJS
Curso de ReactJS
 
Aula 02 - Introdução ao PHP
Aula 02 - Introdução ao PHPAula 02 - Introdução ao PHP
Aula 02 - Introdução ao PHP
 
Estrutura de Dados Apoio (Complexidade de Algoritmos)
Estrutura de Dados Apoio (Complexidade de Algoritmos)Estrutura de Dados Apoio (Complexidade de Algoritmos)
Estrutura de Dados Apoio (Complexidade de Algoritmos)
 
Aula 1 - Introdução a POO
Aula 1 -  Introdução a POOAula 1 -  Introdução a POO
Aula 1 - Introdução a POO
 
Dns
DnsDns
Dns
 
Slide verbos - 6 anos.pdf
Slide verbos - 6 anos.pdfSlide verbos - 6 anos.pdf
Slide verbos - 6 anos.pdf
 
Algoritmos e Estrutura de Dados - Aula 02
Algoritmos e Estrutura de Dados - Aula 02Algoritmos e Estrutura de Dados - Aula 02
Algoritmos e Estrutura de Dados - Aula 02
 
Processos de Desenvolvimento de Software - teoria e prática
Processos de Desenvolvimento de Software - teoria e práticaProcessos de Desenvolvimento de Software - teoria e prática
Processos de Desenvolvimento de Software - teoria e prática
 
DDOS
DDOSDDOS
DDOS
 
Java: Heranca e polimorfismo
Java: Heranca e polimorfismoJava: Heranca e polimorfismo
Java: Heranca e polimorfismo
 
Banco De Dados
Banco De DadosBanco De Dados
Banco De Dados
 
Figuras de linguagem
Figuras  de  linguagemFiguras  de  linguagem
Figuras de linguagem
 
JavaScriptユーティリティライブラリの紹介
JavaScriptユーティリティライブラリの紹介JavaScriptユーティリティライブラリの紹介
JavaScriptユーティリティライブラリの紹介
 
A Linguagem sql
A Linguagem sqlA Linguagem sql
A Linguagem sql
 
Method Overloading in Java
Method Overloading in JavaMethod Overloading in Java
Method Overloading in Java
 
Verbos 2
Verbos 2Verbos 2
Verbos 2
 
Java interfaces & abstract classes
Java interfaces & abstract classesJava interfaces & abstract classes
Java interfaces & abstract classes
 
Vetores e Matrizes em C.
Vetores e Matrizes em C.Vetores e Matrizes em C.
Vetores e Matrizes em C.
 
Aula 6 aed - registros
Aula 6   aed - registrosAula 6   aed - registros
Aula 6 aed - registros
 
Apostila Lógica de Programação
Apostila Lógica de ProgramaçãoApostila Lógica de Programação
Apostila Lógica de Programação
 

Destaque

Tema 2 | Linguagem PHP Básico (II)
Tema 2 | Linguagem PHP Básico (II)Tema 2 | Linguagem PHP Básico (II)
Tema 2 | Linguagem PHP Básico (II)
Henry Raúl González Brito
 
Linguagem PHP
Linguagem PHPLinguagem PHP
Linguagem PHP
guest9c455546
 
Novas Funcionalidade no PHP 5.3
Novas Funcionalidade no PHP 5.3Novas Funcionalidade no PHP 5.3
Novas Funcionalidade no PHP 5.3
Douglas V. Pasqua
 
Apresentação da Linguagem de Programação PHP
Apresentação da Linguagem de Programação PHPApresentação da Linguagem de Programação PHP
Apresentação da Linguagem de Programação PHP
Lorranna Machado
 
Visual basic
Visual basicVisual basic
Visual basic
Sara Gonçalves
 
PHP - Funções
PHP - FunçõesPHP - Funções
PHP - Funções
Fabio Moura Pereira
 
Comandos gerais do PHP
Comandos gerais do PHPComandos gerais do PHP
Comandos gerais do PHP
Paulo Dayvson
 
Curso de PHP Básico ao Avançado
Curso de PHP Básico ao AvançadoCurso de PHP Básico ao Avançado
Curso de PHP Básico ao Avançado
Luiz Junior
 
Atribuições dos líderes de sala
Atribuições dos líderes de salaAtribuições dos líderes de sala
Atribuições dos líderes de sala
eebirmawienfrida
 
Bases De Dados
Bases De DadosBases De Dados
Bases De Dados
arturafonsosousa
 

Destaque (10)

Tema 2 | Linguagem PHP Básico (II)
Tema 2 | Linguagem PHP Básico (II)Tema 2 | Linguagem PHP Básico (II)
Tema 2 | Linguagem PHP Básico (II)
 
Linguagem PHP
Linguagem PHPLinguagem PHP
Linguagem PHP
 
Novas Funcionalidade no PHP 5.3
Novas Funcionalidade no PHP 5.3Novas Funcionalidade no PHP 5.3
Novas Funcionalidade no PHP 5.3
 
Apresentação da Linguagem de Programação PHP
Apresentação da Linguagem de Programação PHPApresentação da Linguagem de Programação PHP
Apresentação da Linguagem de Programação PHP
 
Visual basic
Visual basicVisual basic
Visual basic
 
PHP - Funções
PHP - FunçõesPHP - Funções
PHP - Funções
 
Comandos gerais do PHP
Comandos gerais do PHPComandos gerais do PHP
Comandos gerais do PHP
 
Curso de PHP Básico ao Avançado
Curso de PHP Básico ao AvançadoCurso de PHP Básico ao Avançado
Curso de PHP Básico ao Avançado
 
Atribuições dos líderes de sala
Atribuições dos líderes de salaAtribuições dos líderes de sala
Atribuições dos líderes de sala
 
Bases De Dados
Bases De DadosBases De Dados
Bases De Dados
 

Semelhante a A Linguagem Php

Aula 01 introdução ao php
Aula 01   introdução ao phpAula 01   introdução ao php
Aula 01 introdução ao php
Adriano Castro
 
Php
PhpPhp
Manual PHP
Manual PHPManual PHP
Manual PHP
valterccouto
 
Desenvolvimento web com Software Livre
Desenvolvimento web com Software LivreDesenvolvimento web com Software Livre
Desenvolvimento web com Software Livre
Ruan Carvalho
 
Desenvolvimento web com software livre
Desenvolvimento web com software livreDesenvolvimento web com software livre
Desenvolvimento web com software livre
Ruan Carvalho
 
Apresentação faef
Apresentação faefApresentação faef
Apresentação faef
Lucas Simões Maistro
 
Curso ASP.Net - Módulo 1
Curso ASP.Net - Módulo 1Curso ASP.Net - Módulo 1
Curso ASP.Net - Módulo 1
michellobo
 
Cursos
CursosCursos
Aula 01 - Programação Web - PHP
Aula 01  - Programação Web - PHPAula 01  - Programação Web - PHP
Aula 01 - Programação Web - PHP
Dalton Martins
 
CURSO DE PHP PARA INICIANTES - AULA 1
CURSO DE PHP PARA INICIANTES - AULA 1CURSO DE PHP PARA INICIANTES - AULA 1
CURSO DE PHP PARA INICIANTES - AULA 1
Norivan Oliveira
 
Desenvolvendo Aplicações com Software Livre
Desenvolvendo Aplicações com Software LivreDesenvolvendo Aplicações com Software Livre
Desenvolvendo Aplicações com Software Livre
elliando dias
 
Software livre - Parte 3
Software livre - Parte 3Software livre - Parte 3
Software livre - Parte 3
Fabrício Basto
 
PHP nas Nuvens
PHP nas NuvensPHP nas Nuvens
PHP nas Nuvens
Marcos Bezerra
 
Apache PHP MySQL
Apache  PHP  MySQLApache  PHP  MySQL
Apache PHP MySQL
kisb1337
 
Aula 4 - SAM - Autoria
Aula 4 - SAM - AutoriaAula 4 - SAM - Autoria
Aula 4 - SAM - Autoria
Guilherme Nonino Rosa
 
4. Introdução ao PHP.pdf
4. Introdução ao PHP.pdf4. Introdução ao PHP.pdf
4. Introdução ao PHP.pdf
RubenManhia
 
FISL12. Web Services e Computação em Nuvem com PHP
FISL12. Web Services e Computação em Nuvem com PHPFISL12. Web Services e Computação em Nuvem com PHP
FISL12. Web Services e Computação em Nuvem com PHP
Flávio Lisboa
 
Java Web Dev Introdução
Java Web Dev IntroduçãoJava Web Dev Introdução
Java Web Dev Introdução
Marcio Marinho
 
Apresentação faef
Apresentação faefApresentação faef
Apresentação faef
Lucas Simões Maistro
 
Artigo de php
Artigo de phpArtigo de php
Artigo de php
robson
 

Semelhante a A Linguagem Php (20)

Aula 01 introdução ao php
Aula 01   introdução ao phpAula 01   introdução ao php
Aula 01 introdução ao php
 
Php
PhpPhp
Php
 
Manual PHP
Manual PHPManual PHP
Manual PHP
 
Desenvolvimento web com Software Livre
Desenvolvimento web com Software LivreDesenvolvimento web com Software Livre
Desenvolvimento web com Software Livre
 
Desenvolvimento web com software livre
Desenvolvimento web com software livreDesenvolvimento web com software livre
Desenvolvimento web com software livre
 
Apresentação faef
Apresentação faefApresentação faef
Apresentação faef
 
Curso ASP.Net - Módulo 1
Curso ASP.Net - Módulo 1Curso ASP.Net - Módulo 1
Curso ASP.Net - Módulo 1
 
Cursos
CursosCursos
Cursos
 
Aula 01 - Programação Web - PHP
Aula 01  - Programação Web - PHPAula 01  - Programação Web - PHP
Aula 01 - Programação Web - PHP
 
CURSO DE PHP PARA INICIANTES - AULA 1
CURSO DE PHP PARA INICIANTES - AULA 1CURSO DE PHP PARA INICIANTES - AULA 1
CURSO DE PHP PARA INICIANTES - AULA 1
 
Desenvolvendo Aplicações com Software Livre
Desenvolvendo Aplicações com Software LivreDesenvolvendo Aplicações com Software Livre
Desenvolvendo Aplicações com Software Livre
 
Software livre - Parte 3
Software livre - Parte 3Software livre - Parte 3
Software livre - Parte 3
 
PHP nas Nuvens
PHP nas NuvensPHP nas Nuvens
PHP nas Nuvens
 
Apache PHP MySQL
Apache  PHP  MySQLApache  PHP  MySQL
Apache PHP MySQL
 
Aula 4 - SAM - Autoria
Aula 4 - SAM - AutoriaAula 4 - SAM - Autoria
Aula 4 - SAM - Autoria
 
4. Introdução ao PHP.pdf
4. Introdução ao PHP.pdf4. Introdução ao PHP.pdf
4. Introdução ao PHP.pdf
 
FISL12. Web Services e Computação em Nuvem com PHP
FISL12. Web Services e Computação em Nuvem com PHPFISL12. Web Services e Computação em Nuvem com PHP
FISL12. Web Services e Computação em Nuvem com PHP
 
Java Web Dev Introdução
Java Web Dev IntroduçãoJava Web Dev Introdução
Java Web Dev Introdução
 
Apresentação faef
Apresentação faefApresentação faef
Apresentação faef
 
Artigo de php
Artigo de phpArtigo de php
Artigo de php
 

Último

Subindo uma aplicação WordPress em docker na AWS
Subindo uma aplicação WordPress em docker na AWSSubindo uma aplicação WordPress em docker na AWS
Subindo uma aplicação WordPress em docker na AWS
Ismael Ash
 
Segurança da Informação - Onde estou e para onde eu vou.pptx
Segurança da Informação - Onde estou e para onde eu vou.pptxSegurança da Informação - Onde estou e para onde eu vou.pptx
Segurança da Informação - Onde estou e para onde eu vou.pptx
Divina Vitorino
 
Eletiva_O-mundo-conectado-Ensino-Médio.docx.pdf
Eletiva_O-mundo-conectado-Ensino-Médio.docx.pdfEletiva_O-mundo-conectado-Ensino-Médio.docx.pdf
Eletiva_O-mundo-conectado-Ensino-Médio.docx.pdf
barbosajucy47
 
INTELIGÊNCIA ARTIFICIAL + COMPUTAÇÃO QUÂNTICA = MAIOR REVOLUÇÃO TECNOLÓGICA D...
INTELIGÊNCIA ARTIFICIAL + COMPUTAÇÃO QUÂNTICA = MAIOR REVOLUÇÃO TECNOLÓGICA D...INTELIGÊNCIA ARTIFICIAL + COMPUTAÇÃO QUÂNTICA = MAIOR REVOLUÇÃO TECNOLÓGICA D...
INTELIGÊNCIA ARTIFICIAL + COMPUTAÇÃO QUÂNTICA = MAIOR REVOLUÇÃO TECNOLÓGICA D...
Faga1939
 
Ferramentas que irão te ajudar a entrar no mundo de DevOps/CLoud
Ferramentas que irão te ajudar a entrar no mundo de   DevOps/CLoudFerramentas que irão te ajudar a entrar no mundo de   DevOps/CLoud
Ferramentas que irão te ajudar a entrar no mundo de DevOps/CLoud
Ismael Ash
 
se38_layout_erro_xxxxxxxxxxxxxxxxxx.docx
se38_layout_erro_xxxxxxxxxxxxxxxxxx.docxse38_layout_erro_xxxxxxxxxxxxxxxxxx.docx
se38_layout_erro_xxxxxxxxxxxxxxxxxx.docx
ronaldos10
 
ExpoGestão 2024 - Desvendando um mundo em ebulição
ExpoGestão 2024 - Desvendando um mundo em ebuliçãoExpoGestão 2024 - Desvendando um mundo em ebulição
ExpoGestão 2024 - Desvendando um mundo em ebulição
ExpoGestão
 

Último (7)

Subindo uma aplicação WordPress em docker na AWS
Subindo uma aplicação WordPress em docker na AWSSubindo uma aplicação WordPress em docker na AWS
Subindo uma aplicação WordPress em docker na AWS
 
Segurança da Informação - Onde estou e para onde eu vou.pptx
Segurança da Informação - Onde estou e para onde eu vou.pptxSegurança da Informação - Onde estou e para onde eu vou.pptx
Segurança da Informação - Onde estou e para onde eu vou.pptx
 
Eletiva_O-mundo-conectado-Ensino-Médio.docx.pdf
Eletiva_O-mundo-conectado-Ensino-Médio.docx.pdfEletiva_O-mundo-conectado-Ensino-Médio.docx.pdf
Eletiva_O-mundo-conectado-Ensino-Médio.docx.pdf
 
INTELIGÊNCIA ARTIFICIAL + COMPUTAÇÃO QUÂNTICA = MAIOR REVOLUÇÃO TECNOLÓGICA D...
INTELIGÊNCIA ARTIFICIAL + COMPUTAÇÃO QUÂNTICA = MAIOR REVOLUÇÃO TECNOLÓGICA D...INTELIGÊNCIA ARTIFICIAL + COMPUTAÇÃO QUÂNTICA = MAIOR REVOLUÇÃO TECNOLÓGICA D...
INTELIGÊNCIA ARTIFICIAL + COMPUTAÇÃO QUÂNTICA = MAIOR REVOLUÇÃO TECNOLÓGICA D...
 
Ferramentas que irão te ajudar a entrar no mundo de DevOps/CLoud
Ferramentas que irão te ajudar a entrar no mundo de   DevOps/CLoudFerramentas que irão te ajudar a entrar no mundo de   DevOps/CLoud
Ferramentas que irão te ajudar a entrar no mundo de DevOps/CLoud
 
se38_layout_erro_xxxxxxxxxxxxxxxxxx.docx
se38_layout_erro_xxxxxxxxxxxxxxxxxx.docxse38_layout_erro_xxxxxxxxxxxxxxxxxx.docx
se38_layout_erro_xxxxxxxxxxxxxxxxxx.docx
 
ExpoGestão 2024 - Desvendando um mundo em ebulição
ExpoGestão 2024 - Desvendando um mundo em ebuliçãoExpoGestão 2024 - Desvendando um mundo em ebulição
ExpoGestão 2024 - Desvendando um mundo em ebulição
 

A Linguagem Php

  • 1. Universidade de Aveiro Mestrado em Comunicação Multimédia 1º Semestre 2009/2010 Tecnologias Dinâmicas para a Internet Projecto 3 O PHP     Docentes: Profs. Benjamim Júnior e Telmo Silva Discentes: Henrique Ribeiro, Ivan Terra, João Mourão, Joaquim Vieira, Pedro Dias.    
  • 2. A linguagem PHP &quot;PHP (Hypertext Preprocessor) é uma linguagem livre e muito utilizada para gerar conteúdo dinâmico na World Wide Web. O PHP é considerada uma poderosa linguagem de scripting que actua apenas no lado do servidor (Server-Side). Quando um utilizador visita a página PHP, o servidor web processa o código PHP. Depois determina que partes é que precisa mostrar ao utilizador (conteúdo e imagens) e que partes necessita de esconder (Operações de ficheiros, cálculos matemáticos, etc.). Posteriormente traduz o PHP numa página HTML e envia-a para o browser do utilizador. A linguagem PHP foi concebida 1994 por Rasmus Lerdorf e a primeira versão utilizada por utilizadores foi disponibilizada em 1995, e ficou conhecida como &quot;Personal Home Page Tools&quot; (ferramentas para página pessoal). A versão mais actual é a 5.3 que foi lançada em Junho de 2009 e vem crescendo numa velocidade incrível, e já está a ser desenvolvida a versão 6 do PHP.
  • 3. Vantagens É uma linguagem gratuita (Open Source). É veloz e robusta (o ASP tende a deixar o servidor mais lento, o PHP raramente causa este problema.). É estruturada e de orientação a objectos. De fácil ligação a bases de dados. (Ex: SQL) Funciona em qualquer plataforma onde for possível instalar um servidor Web. Há também versões para Linux, FreeBSD, Solaris, Windows NT, IRIX, HP-UX. A sua sintaxe é familiar, isto é, grande parte da sua sintaxe é &quot;aproveitada&quot; do C, Java e Perl com um pequeno conjunto de funcionalidades específicas. É fácil obter ajuda, existem muitos sites com “helps” Possui muitas funções e funciona com muitas tecnologias (BD, XML, etc.). Muitas pessoas o utilizam pois possibilita boas oportunidades no mundo do trabalho.
  • 4. Desvantagens Possui alguma incompatibilidade entre versões, isto é, falta de padronização. Por exemplo, um comando que funciona numa determinada versão pode não funcionar noutra Possui documentação incompleta, pois como a maioria dos programas Open Source, frequentemente os recursos surgem antes de estarem documentados. O site da organização ajuda bastante, mas é comum encontrar recursos sem documentação e, principalmente, sem exemplos que possam ajudar o aprendiz. Segundo os especialistas, a utilização de Servlets e do JSP deixa os códigos mais seguros do que o PHP pois são pré-compilados.
  • 5. Sintaxe Um script em PHP começa sempre com <?php E termina sempre com ?> No fim de cada instrução usa se o “;” Echo e print para imprimir os resultados e “//”para comentar uma linha de código. Exemplo: <?php echo(&quot;Olá TDI&quot;); ?>
  • 6. Variáveis As variáveis no PHP são representadas por um cifrão ($) seguido pelo nome da variável. Os nomes de variável no PHP fazem distinção entre maiúsculas e minúsculas (case sensitive). <?php $a = 0; //A variável &quot;a&quot; é inicializada com o valor &quot;0&quot;   ?> As variáveis locais não necessitam de ser declaradas e devem ser inicializadas. As variáveis definidas dentro de uma função são locais e não podem ser acedidas fora da função tal como as variáveis definidas fora de uma função também não podem ser acedidas dentro da mesma. Para que seja possível aceder, dentro de uma função, a funções definidas fora desta é necessário definir a variável como global dentro da função
  • 7. Variáveis Super Globais Superglobais são variáveis nativas ou pré-definidas no PHP, o que significa que elas estão disponíveis em todo o script. Não há necessidade de fazer Global “ $variavel;” para lhes aceder dentro de funções. Estas variáveis super globais são: $GLOBALS $_SERVER $_GET $_POST $_FILES $_COOKIE $_SESSION $_REQUEST $_ENV
  • 8. Get Os dados passam entre páginas, embebidas no URL. Os dados estão visível para o utilizador. Exemplo: http://www.tdipt/index.php?nome=alunos (Neste caso a variável nome é transmitida com o valor “alunos”). Este tipo de envio tem algumas desvantagens como: A tecnologia está mais exposta (Reconhecimento visual) É fácil encontrar os parâmetros. O tamanhos dos dados a enviar está condicionado pelo tamanho do URL Vantagens: Este tipo de URL é portável – é possível fazer o bookmark da página, enviar por email, etc.
  • 9. Post No caso do POST podemos passar valores através de formulários Os dados passam entre páginas de modo invisível para o utilizador. Este tipo de envio tem algumas desvantagens como: Problemas com o refresh em alguns browsers. Vantagens: Não existe tamanho limite para os dados a enviar. A informação transmitida é invisível ao utilizador, proporcionando maior segurança na transmissão dos dados.
  • 10. Cookies As cookies são simples e pequenos pedaços de dados armazenados no sistema operativo do utilizador normalmente num ficheiro ( &quot;cookies.txt&quot; ) ou num directório (&quot;C:ocumentsandSettingsseridookies&quot; ) em ficheiros individuais. Permitem a utilização de dados guardados numa visita anterior ao site. Nota: muitas vezes as cookies não armazenam os dados que queremos seguir mas sim um ID que referencia os dados armazenados no servidor .
  • 11. Sessions As sessões (sessions) podem ser usadas para guardar informações relativas à autenticação de utilizadores para prevenir acesso de pessoas não autorizadas a determinada página e que poderão ser acedidos a partir de qualquer página do nosso site uma vez que se trata de uma variável &quot;super global&quot;.
  • 12. Interacção no PHP PHP é uma linguagem que possibilita a interacção com outras linguagens. Ex: HTML JavaScript SQL XML …
  • 13. Validações e Expressões Regulares SQL Injection
  • 14. Validações e Expressões Regulares Todos os dados introduzidos pelo utilizadores devem sempre ser verificados pelo servidor , para garantir uma maior segurança do site. As expressões regulares servem para verificar se uma string tem, ou não, determinados caracteres, serve para validar por exemplo um email.
  • 15. SQL Injection ou injecção de SQL é uma técnica de invasão de sistemas que se tornou famosa na Internet que pode ser utilizada em qualquer linguagem de programação. Ocorre quando o atacante consegue inserir uma série de instruções SQL dentro de uma 'query' através da manipulação da entrada de dados de uma aplicação. Sql Injection
  • 16. Uma framework é uma estrutura de suporte definida em que um outro projecto de software pode ser organizado e desenvolvido. Um framework pode incluir programas de suporte, bibliotecas de código, linguagens de script e outros softwares para ajudar a desenvolver e juntar diferentes componentes de um projecto de software. Frameworks são projectados com a intenção de facilitar o desenvolvimento de software, habilitando designers e programadores a gastarem mais tempo determinando nas exigências do software do que com detalhes tediosos de baixo nível do sistema. Frameworks
  • 17. Zend Framework: uma colecção de arquivos com várias funções de base de dados, RSS, AJAX, E-mail, PDF e Busca. Foi desenvolvida pelos criadores do PHP e tem um excelente documentação sobre o assunto Magpie RSS: Framework que permite que se carregue feeds RSS no site de maneira simples. Simples e rápido de usar;   CakePHP: é um Framework escrito em PHP que tem como principais objectivos oferecer uma estrutura que possibilite aos programadores de PHP de todos os níveis desenvolverem aplicações robustas rapidamente, sem perder flexibilidade Exemplos Frameworks
  • 18. CMS – Content Managment System ou, em português, Sistema de Gestão de Conteúdo, são plataformas web pré-programadas usadas para a construção de sites, portais ou intranets dinâmicos. A grande vantagem no uso destas plataformas é o de permitirem que o conteúdo do site possa ser modificado rapidamente, sem alteração de qualquer linha de código e em qualquer altura, sendo apenas necessário um computador ligado à Internet. Estes sistemas de gestão de conteúdos têm duas áreas diferentes: frontend e backend. O frontend é a zona do site acessível a todos os visitantes, é o que consultamos quando digitamos o endereço do site na Internet. O backend é a parte administrativa do mesmo. Apenas os gestores autorizados (através do nome de utilizador e palavra-chave) conseguem entrar. Dentro do backend é também possível criar zonas restritas para os diferentes tipos de utilizadores. CMS
  • 19. Drupal: O Drupal é uma framework modular (organiza-se por módulos) e um sistema de Gestão de Conteúdos (CMS) escrito em PHP. O Drupal permite criar e organizar conteúdo, manipular a aparência, automatizar tarefas administrativas, e definir permissões e papéis para utilizadores e colaboradores. Por ser desenvolvido em PHP, o Drupal é independente do sistema operativo, no entanto requer um servidor HTTP compatível com PHP e um Servidor de Base de Dados para funcionar. O Drupal é normalmente descrito como uma Framework de Gestão de Conteúdos, pois além de oferecer as funcionalidades básicas de um CMS também tem implementadas uma série de APIs robustas e apresenta uma estrutura modular que facilita o desenvolvimento de módulos complexos. O Drupal é um software livre e de código aberto, por isso qualquer um pode ver como o Drupal funciona, fazer modificações, redistribuir com ou sem as modificações, além de poder propor e participar em mudanças no projecto principal. Tudo isso de acordo com a licença GPL, da GNU. A comunidade Drupal é activa e prestável. Existem vários módulos com funções importantes que foram criados por utilizadores comuns. Joomla: Desenvolvido a partir do Mambo o Joomla escrito em PHP e pode ser executado tanto num servidor Web Apache como num IIS e base de dados MySQL.É um projecto de código aberto (licença GNU/GPL) e a sua última versão estável é a 1.5.14 (em 30 de Julho de 2009). Wordpress: Trata-se um sistema de gestão de conteúdos na web, escrito em PHP e recorrendo a base de dados MySQL, especialmente usado para a criação de blogs. O WordPress foi criado a partir do já desaparecido b2/cafelog e é hoje, junto com o Movable Type, o mais popular na criação de Blogs. As causas do seu rápido crescimento são, entre outras, seu tipo de licença (de código aberto), a facilidade de uso e suas características como gestor de conteúdos. Criado por Ryan Boren e Matthew Mullenweg, é distribuído sob a GNU General Public sendo de uso gratuito. Exemplos CMS
  • 20. http://www.php.net http://www.w3schools.com/PHP/ http://apostilas.fok.com.br/manual-do-php/index.php http://pt.wikipedia.org/wiki/Drupal http://www.webdesignerdepot.com/2009/01/how-to-choose-the-right-cms/ http://www.w3.org/TR/soap12-part0/ http://www.w3.org/TR/soap12-part1/ http://www.w3.org/TR/soap12-part2/ Referencias