Jump to content


wachs's Content

There have been 1 items by wachs (Search limited from 21/04/2023)


Ordernar por                Order  

#895568 Upload Via Ftp

Posted by wachs on 03/02/2008, 21:02 in Artigos, Dicas e Tutoriais de PHP

Olá pessoal, resolvi fazer um sistema de upload via FTP.

OBS: Pode dar alguns erros, pois alguns servidores de FTP tem restrições, no servidor do meu site não deu certo, então tive que optar em um servidor gratuído para poder testar.


<?
//Criado por _Dudu_1533
//dudu1533_php@hotmail.com
//Latest Revision: 2007-12-23


$servidor = "ftp.br.geocities.com";
$usuario  = "usuario";
$senha	= "sua_senha";


$con = ftp_connect($servidor) or die("Erro ao conectar");
$log = ftp_login($con, $usuario, $senha) or die("Erro ao conectar com usuário e senha");


$nome_f = $_FILES['arquivo']['name'];
$nome_t = $_FILES['arquivo']['tmp_name'];
$size_f = $_FILES['arquivo']['size'];
$size_p = 10240000; //10 MB
$info_f = pathinfo($nome_f);
$exte_f = $info_f['extension'];

//Extensões permitidas
$exte_p = array("jpg", "jpeg", "png", "gif", "zip", "rar", "txt", "php", "exe"); 
$dir	= "arquivos/";

if($size_f <= $size_p) {
	if(in_array($exte_f, $exte_p)) {
		if(ftp_put($con, $dir . $nome_f, $nome_t, FTP_BINARY)) {
			ftp_rename($con, $dir . $nome_f, $dir . substr(md5(time()), 0, 10) . "." . $exte_f);
			echo "Arquivo <b>" . $nome_f . "</b> enviado com sucesso!";
			}else{
			echo "Erro ao enviar o arquivo " . $nome_f . "!";
		}
		}else{
		echo "Extensão inválida!";
	}
	}else{
	echo "Tamanho excedido!<br>Tamanho permitido: <b>" . ceil($size_p / 1024 / 1024) . "MB</b>";
}

ftp_close($con);
?>

Código com formulário:

<html>
<body>
<form action="upload.php" method="post" enctype="multipart/form-data">
<input name="arquivo" type="file">
<br>
<input name="enviar" type="submit" value="Enviar!">
</form>
</body>
</html>


Aguardo comentários.
Até mais ^_^


cara aqui tentei faze funfa ele da erro nessa linha

"ftp_rename($con, $dir . $nome_f, $dir . substr(md5(time()), 0, 10) . "." . $exte_f);"

o que eu fiz de errado.

aqui tah o meu codigo como fiko

<?php

$servidor = "ftp.meusite.cm";
$usuario = "user";
$senha = "senha";


$con = ftp_connect($servidor) or die("Erro ao conectar");
$log = ftp_login($con, $usuario, $senha) or die("Erro ao conectar com usuário e senha");


$nome_f = $_FILES['arquivo']['name'];
$nome_t = $_FILES['arquivo']['tmp_name'];
$size_f = $_FILES['arquivo']['size'];
$size_p = 10240000; //10 MB
$info_f = pathinfo($nome_f);
$exte_f = $info_f['extension'];

//Extensões permitidas
$exte_p = array("jpg", "jpeg", "png", "gif", "zip", "rar", "txt", "php", "exe");
$dir = "ftp://ftp.s9ci.com.br/public_html/arquivos/";

if($size_f <= $size_p) {
if(in_array($exte_f, $exte_p)) {
if(ftp_put($con, $dir . $nome_f, $nome_t, FTP_BINARY)) {
ftp_rename($con, $dir . $nome_f, $dir . substr(md5(time()), 0, 10) . "." . $exte_f);
echo "Arquivo <b>" . $nome_f . "</b> enviado com sucesso!";
}else{
echo "Erro ao enviar o arquivo " . $nome_f . "!";
}
}else{
echo "Extensão inválida!";
}
}else{
echo "Tamanho excedido!<br>Tamanho permitido: <b>" . ceil($size_p / 1024 / 1024) . "MB</b>";
}

ftp_close($con);
?>




IPB Skin By Virteq