Script PHP para fazer UPLOAD de arquivos
Publicado por Alessandro Dias 28/05/2007
[ Hits: 17.792 ]
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>
PortScan em PHP com post usando fsockopen
Resolvendo IP para Hostname em PHP
Nenhum comentário foi encontrado.
Cirurgia para acelerar o openSUSE em HD externo via USB
Void Server como Domain Control
Modo Simples de Baixar e Usar o bash-completion
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
[Resolvido] VirtualBox can't enable the AMD-V extension
Como verificar a saúde dos discos no Linux
Como instalar , particionar, formatar e montar um HD adicional no Linux?
Como automatizar sua instalação do Ubuntu para desenvolvimento de software.
Não consigo instalar distro antiga no virtualbox nem direto no hd (14)
Quais os códigos mais dificeis que vcs sabem fazer? (12)
systemd-resol... precisa ser reiniciado periodicamente [RESOLVIDO] (7)









