A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Programação WEB Funções Definidas Variáveis Globais Get x Post Manipulação de Arquivos Prof. Timoteo Lange Junho2014.

Apresentações semelhantes


Apresentação em tema: "Programação WEB Funções Definidas Variáveis Globais Get x Post Manipulação de Arquivos Prof. Timoteo Lange Junho2014."— Transcrição da apresentação:

1 Programação WEB Funções Definidas Variáveis Globais Get x Post Manipulação de Arquivos Prof. Timoteo Lange Junho2014

2 Roteiro Conteúdo Funções Definidas Variáveis Globais Get x Post Manipulação de Arquivos

3 Funções definidas pelo usuário As funções não precisam ser criadas antes de serem referenciadas, exceto quando uma função é condicionalmente definida. Todas as funções e classes no PHP tem escopo global - elas podem ser chamadas fora de uma função mesmo que tenham sido definidas dentro e vice-versa.

4 Funções definidas pelo usuário Uma função pode ser definida usando a seguinte sintaxe:

5 Funções definidas pelo usuário Valores podem ser retornados utilizando a instrução opcional return. Qualquer tipo pode ser retornado, incluindo arrays e objetos. Isto faz com que as função termine sua execução imediatamente e passa o controle de volta para a linha de onde ela foi chamada.

6 Funções definidas pelo usuário

7 Variáveis pré-definidas PHP provê um grande número de variáveis pré-definidas para todos scripts. As variáveis representam tudo de variáveis externas à variáveis nativas de ambiente, última mensagem de erro à último cabeçalho recebido.variáveis externas SuperglobaisSuperglobais — São variáveis nativas que estão sempre disponíveis em todos escopos $GLOBALS$GLOBALS — Referencia todas variáveis disponíveis no escopo global $_SERVER$_SERVER — Informação do servidor e ambiente de execução $_GET$_GET — HTTP GET variáveis $_POST$_POST — HTTP POST variáveis $_REQUEST$_REQUEST — Variáveis de requisição HTTP $_SESSION$_SESSION — Variáveis de sessão $_ENV$_ENV — variáveis de ambiente $_COOKIE$_COOKIE — HTTP Cookies $http_response_header$http_response_header — Cabeçalhos de resposta HTTP $argc$argc — O número de argumentos passados para o script $argv$argv — Array de argumentos passados para o script

8 Variáveis pré-definidas: $_SERVER$_SERVER 'PHP_SELF' O nome do arquivo do script que está executando, relativa à raiz do documento. Por exemplo, $_SERVER['PHP_SELF'] em um script no endereço 'SERVER_ADDR' O endereço IP do servidor onde está o script em execução. 'SERVER_NAME' O nome host do servidor onde o script atual é executado. Se o script está rodando em um host virtual, este será o valor definido para aquele host virtual.

9 Variáveis pré-definidas: $_SERVER$_SERVER 'SERVER_SOFTWARE' A string de identificação do servidor, fornecida nos headers quando respondendo a requests. 'SERVER_PROTOCOL' Nome e número de revisão do protocolo de informação pelo qual a página foi requerida, por exemplo 'HTTP/1.0'; 'REQUEST_METHOD' Contém o método de request utilizando para acessar a página. Geralmente 'GET', 'HEAD', 'POST' ou 'PUT'.

10 Variáveis pré-definidas: $_SERVER$_SERVER 'REQUEST_TIME' O timestamp do início da requisição. Disponível desde o PHP 'QUERY_STRING' A query string (string de solicitação), se houver, pela qual a página foi acessada. 'DOCUMENT_ROOT' O diretório raiz sob onde o script atual é executado, como definido no arquivos de configuração do servidor.

11 Variáveis pré-definidas: $_SERVER$_SERVER 'HTTP_ACCEPT' O conteúdo do header Accept: da requisição atual, se houver. 'HTTP_ACCEPT_CHARSET' O conteúdo do header Accept-Charset: da requisição atual, se houver. Exemplo: 'iso ,*,utf-8'. 'HTTP_ACCEPT_ENCODING' O conteúdo do header Accept-Encoding: da requisição atual, se houver. Exemplo: 'gzip'.

12 Variáveis pré-definidas: $_SERVER$_SERVER 'HTTP_ACCEPT_LANGUAGE' * O conteúdo do header Accept-Language: da requisição atual, se houver. 'HTTP_HOST' O conteúdo do header Host: da requisição atual, se houver. 'HTTP_USER_AGENT' O conteúdo do header User-Agent: da requisição atual, se houver. É uma string denotando o agente de usuário pelo qual a página é acessada. Um exemplo típico é: Mozilla/4.5 [en] (X11; U; Linux i586.

13 Variáveis pré-definidas: $_SERVER$_SERVER 'HTTPS' * Define para um valor não vazio se o script foi requisitado através do protocolo HTTPS. Note que quando usando ISAPI com IIS, o valor será off se a requisição não for feita por protocolo HTTPS. 'REMOTE_ADDR' O endereço IP de onde o usuário está visualizado a página atual. 'REMOTE_HOST' O nome do host que o usuário utilizou para chamar a página atual. O DNS reverso (lookup) do REMOTE_ADDR do usuário. Seu servidor web precisa estar configurado para criar essa variável. Por exemplo, no Apache você precisa colocar um HostnameLookups On dentro do httpd.conf. Veja também gethostbyaddr().gethostbyaddr()

14 Variáveis pré-definidas: $_SERVER$_SERVER 'REMOTE_PORT' A porta TCP na máquina do usuário utilizada para comunicação com o servidor web. 'SCRIPT_FILENAME' O caminho absoluto o script atualmente em execução. Nota: Se o script for executado pela CLI com um caminho relativo, como file.php ou../file.php, $_SERVER['SCRIPT_FILENAME'] irá conter o caminho relativo especificado pelo usuário. 'SERVER_PORT' A porta na máquina servidora utilizada pelo servidor web para comunicação. Como default, este valor é '80'. Utilizando SSL, entretanto, mudará esse valor para a porta de comunicação segura HTTP.

15 Variáveis pré-definidas: $_SERVER$_SERVER 'SERVER_SIGNATURE' String contendo a versão do servidor e nome do host virtual que é adicionado às páginas geradas no servidor, se ativo. 'PATH_TRANSLATED' * O caminho real do script relativo ao sistema de arquivos (não o document root), depois realizou todos os mapeamentos de caminhos (virtual-to- real). 'SCRIPT_NAME' Contém o caminho completo do script atual. Útil para páginas que precisam apontar para elas mesmas (dinamicamente). A constante __FILE__ contém o caminho completo e nome do arquivo (mesmo incluído) atual.__FILE__ 'REQUEST_URI' O URI fornecido para acessar a página atual, por exemplo, '/index.html'.

16 POST x GET Get: envia os dados por uma cadeia de variáveis e seus valores junto ao endereço destinado Post: envia os dados por meio do corpo da mensagem através de um formulário. Os dados enviados pelo método post não são visíveis ao contrario do get.

17 POST É mais seguro que GET porque as informações enviadas pelo usuário nunca são visíveis na URL. Há um limite maior na quantidade de dados que podem ser enviadas de uma página para outra (aprox. 2kb). Os resultado não podem ser adicionados ao bookmark (favoritos)

18 POST " method=“post"> Nome:

19 GET Cada evento GET é registrado no log do Servidor. O comprimento da URL do servidor é limitado. GET não é adequado para logins ou dados que não podem ser armazenados no histórico do navegador. GET é o método padrão para envio de dados por formulários.

20 GET " method="get"> Nome:

21 Manipulação de Arquivos Copiando Arquivos int copy(string origem string destino); Onde: Origem – caminho do arquivo de origem; Destino – caminho do arquivo de destino; Retorna false caso a cópia não seja realizada.

22 Manipulação de Arquivos Verificando o tamanho de um arquivo int filesize(string arquivo); Esta função retorna um inteiro com o tamanho do arquivo, em bytes, ou false em caso de erro.

23 Manipulação de Arquivos Verificando se um arquivo existe int file_exists(string arquivo); Esta função tem um comportamento booleano: retorna apenas true ou false, não informando mais nada sobre o arquivo.

24 Manipulação de Arquivos Abrindo arquivos para leitura e/ou escrita Para ler ou escrever num arquivo é preciso antes de qualquer coisa abri-lo. Para isso deve ser utilizada a função fopen, int fopen(string arquivo, string modo, int [use_include_path]); A função fopen retorna false em caso de erro, e um identificador do arquivo em caso de sucesso. Esse identificador será utilizado em outras funções que manipulam o conteúdo do arquivo.

25 Manipulação de Arquivos Argumentos: Arquivo: nome do arquivo; Modo: como o arquivo será aberto, que pode ser um dos seguintes: r Abre o arquivo com permissão apenas para leitura. r+ Abre o arquivo com permissão para escrita e leitura, posicionando o ponteiro no início do mesmo (Duplica o conteúdo original). w Abre o arquivo com permissão apenas para escrita. Se o arquivo existir, todo o conteúdo é apagado. Se não existir, o PHP tenta criá-lo. O ponteiro é posicionado no início do arquivo (apaga o conteúdo antes de gravar). w+ Abre o arquivo com permissão para escrita e leitura. Se o arquivo existir, todo o conteúdo é apagado. Se não existir, o PHP tenta criá-lo. O ponteiro é posicionado no início do arquivo (apaga o conteúdo antes de gravar). a Abre o arquivo com permissão apenas para escrita. Se o arquivo não existir, o PHP tenta criá-lo. O ponteiro é posicionado no final do arquivo. a+ Abre o arquivo com permissão para escrita e leitura. Se o arquivo não existir, o PHP tenta criá-lo. O ponteiro é posicionado no final do arquivo.

26 Manipulação de Arquivos Para encerrar a manipulação de um arquivo deve-se utilizar a função fclose int fclose(int fp); Onde fp é o identificador do arquivo, retornado pela função fopen.

27 Manipulação de Arquivos Lendo de um arquivo string fread(int fp, int tamanho); Retorna uma string com o conteúdo do arquivo. Onde: Fp: ponteiro para o arquivo; Tamanho: tamanho do buffer de leitura; Se o tamanho determinado for maior que o arquivo, não ocorre erro, tendo como retorno apenas o arquivo. Na maioria dos casos a função filesize é bastante útil, como no exemplo abaixo: $meuarquivo = “c:/autoexec.bat”; $id = fopen($meuarquivo, “r”); $conteudo = fread($id,filesize($meuarquivo)); A função fread é “binary-safe”, ou seja, pode ser usada para ler o conteúdo de um arquivo binário.

28 Manipulação de Arquivos Escrevendo em um arquivo int fwrite(int fp, string conteudo, int [tamanho]); Grava em um arquivo o conteúdo. Se o tamanho for fornecido e for menor que o tamanho da string, será feita a gravação apenas de uma parte da mesma, determinada pelo terceiro parâmetro.

29 Manipulação de Arquivos Exemplo: O conteúdo do arquivo enviado armazenado na string $teste_conteudo, podendo assim ser armazenado onde for mais adequado.

30 Atividades 1)Fazer uma página que identifique o tipo de navegador e o IP do browser; 2)Incluir um contador de acesso à página 3)Fazer uma página que informa o número de colunas e linha e crie uma página html com uma tabela do tamanho informado – testar usando GET e POST; 4)Fazer um página que possa ser informado dois campos e o nome do arquivo. Após informar os dados deverá salvar em um arquivo.


Carregar ppt "Programação WEB Funções Definidas Variáveis Globais Get x Post Manipulação de Arquivos Prof. Timoteo Lange Junho2014."

Apresentações semelhantes


Anúncios Google