Script PHP para fazer UPLOAD de arquivos
Publicado por Alessandro Dias 28/05/2007
[ Hits: 17.717 ]
Script muito simples de usar. Basta baixar e colocar no seu site.
Os uploads são feitos para uma pasta "diretorio".
Altere as permissões desta pasta para que o usuário apache possa gravar os arquivos e pronto ...
Bye.
<?php
// Upload Script
// Desenvolvido por: Alessandro Dias
// Data: 29/09/2005
$title="Sistema de Transferência de Arquivos";
$msg="<small><p align=\"justify\"><br> Este serviço foi desenvolvido para que o usuário envie e receba arquivos de até 200MB para o servidor de FTP do COTER de forma segura (criptografada) através da Intranet e Internet. Esses arquivos ficarão no servidor por 30 dias a contar da data da transferência (Upload).<br><br> Para a transferência o usuário deverá seguir os passos abaixo, colocando o endereço de Email para que a comunicação seja feita e o destinatário tome conhecimento do caminho para o arquivo, que será utilizado posteriormente para o download. Cabe resaltar que o caminho para o arquivo tem um nome único e que somente o remetente e o destinatário terão conhecimento do mesmo.</p><p align=\"right\"> Página Desenvolvida pelo Alessandro Dias </small> </p>";
$diretorio="diretorio";
?>
<table width="800" align=center border=0 cellpadding=2 cellspacing=0>
<tr>
<td align="center" bgcolor="#DCDCDC"><b><?=$title?></b>
<table cellspacing="2" cellpadding="5" border="0" width="99%">
<tr>
<td bgcolor="#FFFFFF" align="justify">
<?
if(isset($msg))
echo "<font color=\"black\">$msg</font>";
?>
<FORM method=post enctype="multipart/form-data" action="corpo.php">
<CENTER>
<HR noShade>
<TABLE>
<TBODY>
<TR>
<TD align=right>Email do Destinatário do Arquivo:
<TD><INPUT name=email_to size=20 type=text value=""> @coter.eb.mil.br</TR>
<TR>
<TD align=right>Caminho para o arquivo:
<input type=hidden name=dir value="<?=base64_encode(realpath($diretorio))?>">
<TD><INPUT name=caminho size=50 type=file> </TR>
<TR>
<TD align=right>Seu endereço de Email (Opcional):
<TD><INPUT name=email_from size=20 type=text value=""> @coter.eb.mil.br</TR>
<TR>
<TD align=right>Mensagem para o Destinatário (Opcional):
<TD><TEXTAREA name=msg_to cols=50 rows=5></TEXTAREA> </TR>
</TBODY></TABLE>
<HR noShade>
<INPUT name=enviar type=submit value="Enviar Arquivo">
</FORM>
</td>
</tr>
</table>
<?php
if ($_POST['enviar']) {
if ($_POST['email_from'] !="") {
$as_email_from=addslashes($_POST['email_from']);
$tr_email_from=trim($as_email_from);
} else {
$tr_email_from="suporte";
}
if ($_POST['email_to'] !="") {
$as_email_to=addslashes($_POST['email_to']);
$tr_email_to=trim($as_email_to);
} else {
$tr_email_to="suporte";
}
if ($_POST['caminho'] !="") {
$as_caminho=addslashes($_POST['caminho']);
$tr_caminho=trim($as_caminho);
} else {
$tr_caminho="suporte";
}
if ($_POST['msg_to'] !="") {
$as_msg=addslashes($_POST['msg_to']);
$tr_msg=trim($as_msg);
} else {
$tr_msg="Obrigado!";
}
// Corta a string CAMINHO
$pos = strrpos($tr_caminho, '\\');
$arquivo = substr($tr_caminho, $pos + 1, strlen($tr_caminho) - $pos);
// --------------------------- Nome do Arquivo
$nome_arq_new = time();
// -------------------------------- Upload do Arquivo
$uploaddir = '/srv/www/default/ftp/diretorio/';
$nome_arq_upload = $_FILES['caminho']['name'];
$nome_arq_upload = str_replace('ª', 'a',$nome_arq_upload);
$nome_arq_upload = str_replace('º', 'o',$nome_arq_upload);
$nome_arq_upload = str_replace(' ', '_',$nome_arq_upload);
$nome_arq_upload = str_replace('[', '',$nome_arq_upload);
$nome_arq_upload = str_replace(']', '',$nome_arq_upload);
$nome_arq_upload = str_replace('(', '',$nome_arq_upload);
$nome_arq_upload = str_replace(')', '',$nome_arq_upload);
$nome_arq_upload = str_replace('{', '',$nome_arq_upload);
$nome_arq_upload = str_replace('}', '',$nome_arq_upload);
$nome_arq_upload = str_replace('!', '',$nome_arq_upload);
$nome_arq_upload = str_replace('@', '',$nome_arq_upload);
$nome_arq_upload = str_replace('#', '',$nome_arq_upload);
$nome_arq_upload = str_replace('$', '',$nome_arq_upload);
$nome_arq_upload = str_replace('%', '',$nome_arq_upload);
$nome_arq_upload = str_replace('^', '',$nome_arq_upload);
$nome_arq_upload = str_replace('&', '',$nome_arq_upload);
$nome_arq_upload = str_replace('*', '',$nome_arq_upload);
$nome_arq_upload = str_replace('ç', 'c',$nome_arq_upload);
$nome_arq_upload = str_replace('ã', 'a',$nome_arq_upload);
$nome_arq_upload = str_replace('õ', 'o',$nome_arq_upload);
$nome_arq_upload = str_replace('á', 'a',$nome_arq_upload);
$nome_arq_upload = str_replace('à', 'a',$nome_arq_upload);
$nome_arq_upload = str_replace('é', 'e',$nome_arq_upload);
$nome_arq_upload = str_replace('í', 'i',$nome_arq_upload);
$nome_arq_upload = str_replace('ó', 'o',$nome_arq_upload);
$nome_arq_upload = str_replace('ú', 'u',$nome_arq_upload);
$nome_arq_upload = str_replace('ê', 'e',$nome_arq_upload);
$nome_arq_upload = str_replace('ô', 'o',$nome_arq_upload);
$nome_arq_upload = str_replace('Ç', 'C',$nome_arq_upload);
$nome_arq_upload = str_replace('Ã', 'A',$nome_arq_upload);
$nome_arq_upload = str_replace('Õ', 'O',$nome_arq_upload);
$nome_arq_upload = str_replace('Á', 'A',$nome_arq_upload);
$nome_arq_upload = str_replace('É', 'E',$nome_arq_upload);
$nome_arq_upload = str_replace('Í', 'I',$nome_arq_upload);
$nome_arq_upload = str_replace('Ó', 'O',$nome_arq_upload);
$nome_arq_upload = str_replace('Ú', 'U',$nome_arq_upload);
$nome_arq_upload = str_replace('Ê', 'E',$nome_arq_upload);
$nome_arq_upload = str_replace('Ô', 'O',$nome_arq_upload);
$tamanho = $_FILES['caminho']['size'];
$uploadfile = $uploaddir.$nome_arq_new."_".$tr_email_to."_".$nome_arq_upload;
if (move_uploaded_file($_FILES['caminho']['tmp_name'], $uploadfile)) {
// --------------------------- Envia MSG
$boundary = uniqid("HTMLDEMO");
$from = "From: ".$tr_email_from."@coter.eb.mil.br\r\n";
// $from .= "MIME-Version: 1.0\r\n";
// $from .= "Content-Type: text/html; charset=ISO-8859-1\r\n"."Content-Transfer-Encoding: base64\r\n\r\n";
$to = $tr_email_to.'@coter.eb.mil.br' ;
$subject = "Arquivo Transferido: ".$nome_arq_upload;
$message = "Esta mensagem foi enviada com a utilizacao do Sistema de Transferencia de Arquivos do COTER. Para acessar ao arquivo \"".$nome_arq_upload."\" (".$tamanho." Bytes), basta clicar no link abaixo, que contem o caminho para o Download do arquivo: \r\n\n";
$message .= "\"https://ftp.coter.eb.mil.br/diretorio/".$nome_arq_new."_".$tr_email_to."_".$nome_arq_upload."\"\r\n\n";
$message .= "Lembrando que o arquivo estara disponivel no servidor por \"30 dias\" a contar da data desta mensagem. \r\n\n";
$message .= " -----\r\n";
$message .= $tr_msg;
mail($to, $subject, $message, $from);
// ------------------------------------
print "<font color=green size=4>O arquivo foi carregado com sucesso!</font><br>";
//print "<br> Informações sobre o arquivo:<br>\n";
//print_r($_FILES);
} else {
print "<font color=red size=4>Upload não realizado! Verifique o tamanho do arquivo.</font><br>\n";
print_r($_FILES);
}
// -------------------------------------------------
}
?>
</td>
</tr>
</table>
PHP Script para testar ping de varios enderecoes em arquivo TXT
Nenhum comentário foi encontrado.
Como extrair chaves TOTP 2FA a partir de QRCODE (Google Authenticator)
Linux em 2025: Segurança prática para o usuário
Desktop Linux em alta: novos apps, distros e privacidade marcam o sábado
IA chega ao desktop e impulsiona produtividade no mundo Linux
Novos apps de produtividade, avanços em IA e distros em ebulição agitam o universo Linux
Como instalar o repositório do DBeaver no Ubuntu
Como instalar o Plex Media Server no Ubuntu
Digitando underscore com "shift" + "barra de espaços"
Como ativar a lixeira e recuperar aquivos deletados em um servidor Linux
Como mudar o nome de dispositivos Bluetooth via linha de comando
converter algoritmo C++ em C? (1)
Programa fora de escala na tela do pc (22)
Problemas com Driver NVIDIA (1)
Fedora KDE plasma 42 X Módulo de segurança BB (Warsaw-2) (1)









