O PHP possui uma função bastante simples que nos permite verificar se um upload via HTTP POST aconteceu. É o is_uploaded_file(), que retorna um valor booleano true ou false. Essa função precisa receber um argumento, que no caso da verificação do upload via post, poderia ser da seguinte forma:

Campo no formuário:

<input name="arquivo" id="arquivo" accept="application/pdf" type="file" />

Na sua verificação:

if (is_uploaded_file($_FILES['arquivo']['tmp_name']))

{

//arquivo recebido por POST com sucesso

}

else

{

//falha

}

OBSERVAÇÃO

No parâmetro da função, utilize sempre $_FILES['arquivo']['tmp_name'], onde "arquivo" é o nome dado no seu formlário e "tmp_name" é o nome temporário que o arquivo terá no servidor. Utilizar $_FILES['arquivo']['name'], que é o nome obtido na máquina local de onde o arquivo foi originado, não funcionará. 


Outras dicas de PHP


Apagando variáveis de sessão

array_reverse - Invertendo um vetor

array_search - Procurando um item em um array

Capturando a extensão de um arquivo

Capturando dados de um checkbox

Casts - Convertendo tipos de dados

ceil - Arredondando números reais para cima

checkdate - Validando datas no código PHP

Como desabilitar checkbox

Como desabilitar um radiobutton

Como permitir somente o upload de imagens

Como remover espaços em branco de uma string

Como validar o upload de um arquivo via POST

Convertendo caracteres com acento para maiúsculo com mb_strtoupper

Corrigindo a formatação da página para exibir acentos

Corrigindo o erro 'invalid byte sequence for encoding' ao acessar o Postgres

Criando e lendo um cookie em PHP

Criando variáveis de sessão

Date - Exibindo horário em formato hh:mm:ss

define - Criando constantes

Desabilitando as mensagens de Deprecated Functions

empty - Verificando se variável está vazia

Entendendo as diferenças entre os comandos include e require

Entendendo as diferenças entre os comandos include_once e require_once

Exibindo uma imagem após o post

floor - Arredondando números reais para baixo

gettype - Obtendo o tipo de dado de uma variável

Impedindo SQL Injection

Imprimindo Arrays

join - Convertendo um array em string

max - Encontrando o maior elemento de um vetor

min - Encontrando o menor elemento de um vetor

mt_rand - Gerando números randômicos

number_format - Formatando números

Operador ternário

Passando caracteres especiais por GET

Passando dados por QueryString

Permitindo o upload somente de arquivos PDF e do Word

Redirecionando para outras páginas

Removendo acentos em PHP

Removendo cookies em PHP

Retornando para a página anterior

Round - Arredondando números float

Rsort - Ordenando os itens de um vetor em ordem alfabética decrescente

session_write_close - gravando dados e fechando a sessão

shuffle - Embaralhando elementos de um array

Sizeof - Contando os elementos de um vetor

Sort - Ordenando os itens de um vetor

strtolower - Deixando todos os caracteres em minúsculo

strtoupper - Deixando todos os caracteres em maiúsculo

str_replace - Substituindo caracteres em uma string

Trabalhando com datas em PHP

ucfirst - Deixando o primeiro caractere sempre maiúsculo

ucwords - Deixando o primeiro caractere de cada palavra maiúsculo

unset - Excluindo variáveis

unset - Removendo elementos de um array

var_dump - Analisando as variáveis

Você Sabia?

O personagem Mario só possui bigode porque quando ele foi criado, em 1981, a resolução de tela dos equipamentos disponíveis não permitia que fosse desenhada uma boca, então os desenvolvedores fizeram o grande bigode para contornar essa limitação tecnológica.


Considerando todas as adaptações de jogos de videogame para o cinema, a mais bem sucedida foi Lara Croft: Tomb Raider, lançado em 2001 e que faturou 274 milhões de dólares. Ele foi dirigido por Simon West e estrelado pela bela Angelina Jolie.


O primeiro jogo a fazer uso de uma Inteligência Artificial foi o Mouse in the Maze, criado em 1955, na União Soviética. Você pode saber mais sobre ele clicando aqui.


Nos primeiros oito dias após o lançamento do console Nintendo Wii foram vendidas 600 mil unidades. Isso equivale a quase um por segundo e estes incríveis números são referentes às vendas apenas nos EUA!


Excesso de barulho dentro do seu gabinete, principalmente logo que você o liga, pode ser sintoma de problemas nas ventoinhas, que podem precisar ser limpas ou trocadas. Entre em contato com um técnico de sua confiança e verifique isso o quanto antes.