Script PHP para fazer UPLOAD de arquivos
Publicado por Alessandro Dias 28/05/2007
[ Hits: 17.450 ]
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
PortScan em PHP com post usando fsockopen
Script PHP para autenticacao web dos usuarios do proprio linux
Nenhum comentário foi encontrado.
Enviar mensagem ao usuário trabalhando com as opções do php.ini
Meu Fork do Plugin de Integração do CVS para o KDevelop
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Compartilhamento de Rede com samba em modo Público/Anônimo de forma simples, rápido e fácil
Cups: Mapear/listar todas as impressoras de outro Servidor CUPS de forma rápida e fácil
Criando uma VPC na AWS via CLI
Tem como instalar o gerenciador AMD Adrenalin no Ubuntu 24.04? (15)
Tenho dois Link's ( IP VÁLIDOS ), estou tentando fazer o failover... (0)
Pendrive não formata de jeito nenhum (4)