FACULDADE DE TECNOLOGIA SENAC PELOTAS Curso Superior de Tecnologia em Redes de Computadores Programação para Internet – Edécio Fernando Iepsen Upload de Arquivos Para enviar imagens ou algum outro tipo de arquivo para um servidor web é necessário realizar as seguintes operações: 1) Adicionar no comando <FORM ...> o parâmetro <FORM METHOD="POST" ENCTYPE="multipart/form-data"> 2) Incluir no formulário o comando Imagem: <INPUT TYPE="FILE" NAME="capa"> 3) Obter no programa que irá receber os dados do formulário os detalhes do arquivo através da variável $_FILES, contendo os seguintes parâmetros: $_FILES["capa"]["name"] => Retorna o nome original do arquivo na máquina do usuário. $_FILES["capa"]["tmp_name"]; => Retorna o nome temporário do arquivo no servidor Web. $_FILES["capa"]["size"]; => Retorna o tamanho do arquivo em bytes. $_FILES["capa"]["type"]; => Retorna o tipo mime do arquivo. Útil para verificar se o arquivo enviado pelo usuário é do tipo que foi solicitado no formulário. Exemplos: image/gif, image/jpeg, text/html, application/msword (*.doc), application/pdf 4) Copiar a imagem para o servidor Web, através do comando Copy. Os parâmetros do copy são origem e destino e ele retorna true ou false, com a indicação de cópia bem sucedida ou não. Obs.: Nos servidores Web é necessário modificar os atributos de um diretório para permitir a gravação de arquivos enviados por formulários. Isto é feito através do comando chmod, seguido pela modificação dos atributos do diretório. 5) Por fim, caso seja necessário excluir do servidor Web um arquivo, basta utilizar o comando unlink(arquivo). Ele remove o arquivo passado como parâmetro, retornando true ou false – conforme o sucesso da operação. Funções para manipulação de Datas e Horas Trabalhar corretamente com datas e horas é um pré-requisito fundamental para o desenvolvimento de aplicações Web. O PHP dispõe de um conjunto de funções para manipular datas, que permitem a recuperação da data do sistema, a geração de uma nova data, bem como, a verificação da validade de uma data informada pelo usuário. date( ) – retorna uma data/hora de acordo com o formato indicado. A tabela ao lado exibe os principais símbolos usados na formatação de datas e horas. Exemplos: $hoje = date("d/m/Y"); echo "Hoje é $hoje"; mktime( ) – é utilizado para criar uma nova data. Os parâmetros são: mktime(horas, minutos, segundos, mês, dia, ano); Parâmetro d w m Y y G i s Descrição Dia do mês, com 2 dígitos Dia da semana (0 – Domingo ...) Dia do mês Ano, com 4 dígitos Ano, com 2 dígitos Hora Minutos, com 2 dígitos Segundos, com 2 dígitos Exemplos: $amanha = mktime(0, 0, 0, date("m"), date("d")+1, date("Y")); $mesanterior = mktime(0, 0, 0, date("m")-1, date("d"), date("Y")); $hoje = mktime(0, 0, 0, date("m"), date("d"), data("Y")); $prox_semana = $hoje + (86400 * 7); // 86400: segundos de um dia (24 x 60 x 60) echo "Próxima Semana: " . date("d/m/Y", $prox_semana); checkdate(mês, dia, ano) – Verifica a validade de uma data. Cookies Cookie é um arquivo-texto que podemos armazenar no computador do usuário, para ser recuperado posteriormente pelo servidor. Um cookie é formado por um par nome/valor, ou seja, possui um nome pelo qual é referenciado e um valor associado a esse nome. Pode ser utilizado em qualquer aplicação que necessite compartilhar dados entre diferentes páginas, contudo, deve-se estar ciente que o usuário pode desabilitar no seu browser o uso de cookies. Outra questão importante sobre os cookies é que este mecanismo não deve ser utilizado para armazenar informações confidenciais dos clientes, sob pena das mesmas serem violadas. Os cookies são úteis para armazenar informações de visitas do usuário no site, como o seu nome, suas preferências ou então, um contador de visitas informando quantas vezes aquele usuário (se acessando o mesmo computador) visitou um determinado site. Como o cookie de cada usuário fica armazenado em seu computador, se diferentes usuários acessarem o site, cada um terá um valor do número de visitas. Para criar e armazenar um cookie ou alterá-lo, utilize o comando setcookie, com a seguinte sintaxe: setcookie(nome, valor, prazo, caminho, domínio) nome: indica o nome do cookie. valor: o valor que será atribuído ao cookie. prazo: indica o prazo de expiração do cookie (opcional). caminho: em qual diretório (do servidor) o cookie estará disponível para utilização (opcional). domínio: indica o domínio de internet que terá acesso ao cookie (opcional). Exemplo: setcookie("cidade", "Pelotas", time()+86400); Como o setcookie atua diretamente no cabeçalho da resposta de uma requisição http, ele deve ser o primeiro comando a retornar algo para o cliente. Para recuperar o valor de um cookie (ou verificar sua existência) utilize a supervariável $_COOKIE["cidade"]. Para remover um cookie do cliente deve-se atribuir o valor false para ele. Como este procedimento depende do cliente, costumase passar também um valor negativo para o seu prazo de expiração. Exemplo: setcookie("cidade", false, -1);