PHP – Enviando Arquivos

É possível enviar arquivos através de páginas de seu website hospedado na Inetweb utilizando PHP. Um exemplo de utilização deste componente seria para um sistema de Recursos Humanos, onde o usuário pode enviar currículo através de sua página.

Este primeiro formulário é composto de um HTML simples, que fará o “post” para a outra página com o código PHP de envio do formulário:

<form action="upload.php" method="post" enctype="multipart/form-data">
<input type="file"  name="ufile" />
<input type="submit" value="Upload" />
</form>

Abaixo segue o código da página responsável pelo envio dos arquivos. A mesma deve ser nomeada como “upload.php” para que o evento “post” do formulário HTML transcorra sem problemas:

<?php

$SafeFile = $_FILES['ufile']['name'];
$SafeFile = str_replace("#", "No.", $SafeFile);
$SafeFile = str_replace("$", "Dollar", $SafeFile);
$SafeFile = str_replace("%", "Percent", $SafeFile);
$SafeFile = str_replace("^", "", $SafeFile);
$SafeFile = str_replace("&", "and", $SafeFile);
$SafeFile = str_replace("*", "", $SafeFile);
$SafeFile = str_replace("?", "", $SafeFile);

$uploaddir = "uploads/";
$path = $uploaddir.$SafeFile;

if($ufile != none){ //AS LONG AS A FILE WAS SELECTED...

    if(copy($_FILES['ufile']['tmp_name'], $path))
    {

        //GET FILE NAME
        $theFileName = $_FILES['ufile']['name'];

        //GET FILE SIZE
        $theFileSize = $_FILES['ufile']['size'];

        if ($theFileSize>999999){ //IF GREATER THAN 999KB, DISPLAY AS MB
            $theDiv = $theFileSize / 1000000;
            $theFileSize = round($theDiv, 1)." MB"; //round($WhatToRound, $DecimalPlaces)
        } else { //OTHERWISE DISPLAY AS KB
            $theDiv = $theFileSize / 1000;
            $theFileSize = round($theDiv, 1)." KB"; //round($WhatToRound, $DecimalPlaces)
        }

	echo "Sucesso<br>\n";
	echo "Arquivo: $theFileName <br>\n";
	echo "Tamanho: $theFileSize<br>\n";
	echo "Diretorio: $uploaddir<br>\n";

    }
    else
    {

    	echo "erro ao fazer o upload do arquivo. Diretorio: ". $_FILES['ufile']['tmp_name'];

    }
}

?>

No exemplo acima foi utilizado um diretório de teste (/uploads), substitua o diretório para o de seu domínio que irá funcionar, lembrando que o mesmo necessita de permissão de escrita.

» Caso esse item não tenha esclarecido suas dúvidas, acesse http://www.inetweb.com.br/atendimento ou envie um e-mail para suporte@inetweb.com.br.

  IMPORTANTE: A Inetweb não oferece suporte referente a linguagens de programação, ficando à nossa responsabilidade somente 
o suporte na utilização da mesma. Para maiores informações sobre funcionalidades, recursos, sugestões e 
reclamações, recomendamos seja utilizada a documentação da linguagem de programação em questão.

Is this Base de conhecimento useful? Useful Useless 0 of 0 people say this Base de conhecimento is useful.