Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Mike_X

FTP com PHP ou so upload com php

Recommended Posts

Seguinte galera montei um script q envia uma arquivo ZIP com varias fotos, q qndo xega no servidor extrai para uma pasta "x"

mas acontece q o qnd o arquivo e mt grande da pau, tipo aparece akela pagina como se site nao existe ou pagina nao encontrada bla bla bla...

a situação eh a seguinte se eu enviar o ZIP usando um CUTE FTP por ex, o upload vai trankilo q eh uma blzzz pode ter 500MB q vai na boa...

entao eu pensei, poxa, vou mandar o ZIP pelo cute, dpois q xegar eu rodo o script pra extrair o zip..

bom axo q funcionaria beleza...

dai vi por ai q o php tbm trabalha com FTP, seu montar um script para enviar via ftp, vai resolver o problema de ter q existir no cliente um CUTE pra funcionar?

 

bom segue o codigo se alguem kiser melhorar ;)

<? 
set_time_limit(0);
ini_set('post_max_size', '100M');
ini_set('upload_max_filesize', '100M'); 	

$pasta = $_POST['pasta'];

if($pasta != ""){

@mkdir("eventos/$pasta", 0777);
@chmod("eventos/$pasta/", 0777);
$arquivotemp = $_FILES['fotos_zip']['tmp_name'];

if (is_uploaded_file($arquivotemp)){
		require_once('zip.lib.php'); //requer o arquivo, deve estar na mesma pasta
		$archive = new PclZip($arquivotemp); 
		$list = $archive->extract(PCLZIP_OPT_PATH, "eventos/$pasta",PCLZIP_OPT_REMOVE_ALL_PATH); // extrai todos arquivos
		echo "<strong>$arquivotemp</strong> Enviado com Sucesso!<br>";
		echo "<a href=form.php><< Voltar</a>";
// FIM DO DESCOMPACTA OS ARQUIVOS
}
}else{
echo "<strong>ERRO!</strong><br>";
echo "<a href=form.php><< Voltar</a>";
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

cara... assim... você n deve ta conciguindo envia pq o servidor em php delimito pra sei la eu quantos mb... e em ftp imagino eu q não tenha esse limite...

o geito é sim... fazer um em ftp... vo da um tentiada... assim q eu tiver tempo livre aqui na bolsa... eu faço beleza =]

 

flw

 

 

< EDIT >

TA AE

 

<?php

// Cria a conexão

$conn_id = ftp_connect($ftp_server);

 

// login com o nome de usuário e senha

$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);

 

// confere a conexão

if ((!$conn_id) || (!$login_result)) {

echo "A conexão FTP falhou!";

echo "Tentou conectar ao servidor $ftp_server para o usuário $ftp_user_name";

exit;

} else {

echo "Conectaado ao servidor $ftp_server, para o usuário $ftp_user_name";

}

 

// carrega o arquivo

$upload = ftp_put($conn_id, $destination_file, $source_file, FTP_BINARY);

 

// confere o upload do arquivo

if (!$upload) {

echo "O upload FTP falhou!";

} else {

echo "Carregado o arquivo $source_file no servidor $ftp_server como $destination_file";

}

 

// fecha a conexão FTP

ftp_close($conn_id);

?>

 

 

^^ dei uma copiada pra ti espero q entenda qualquer coisa PM!!!

VLW

Compartilhar este post


Link para o post
Compartilhar em outros sites

limpeza funciona direitinho mas eu testei local tipow enviando do meu pc para o servidor...

mas como seria acessar o link no servidor, ftp.php por exemplo pra enviar do meu pc pro servidor??

 

 

<?php

$ftp_server = "ftp.tal.com";

$ftp_user_name = "fulano";

$ftp_user_pass = "senha";

 

$source_file = 'F:\Sites\Aula\brincando\somefile.txt';

$destination_file = '/public_html/readme.txt';

 

// Cria a conexão

$conn_id = ftp_connect($ftp_server);

 

// login com o nome de usuário e senha

$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);

 

// confere a conexão

if ((!$conn_id) || (!$login_result)) {

echo "A conexão FTP falhou!";

echo "Tentou conectar ao servidor $ftp_server para o usuário $ftp_user_name";

exit;

} else {

echo "Conectaado ao servidor $ftp_server, para o usuário $ftp_user_name<p>";

}

 

// carrega o arquivo

$upload = ftp_put($conn_id, $destination_file, $source_file, FTP_BINARY);

 

// confere o upload do arquivo

if (!$upload) {

echo "O upload FTP falhou!";

} else {

echo "Carregado o arquivo $source_file no servidor $ftp_server como $destination_file";

}

 

// fecha a conexão FTP

ftp_close($conn_id);

?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

esse lance de FTP naum vai funfar muito bem naum...

se você criar um form padrao... onde tenha apenas um campo file e um submit...

sa pode ate mandar o script fazer upload pro FTP... + primeiramente o navegador tera de enviar o arquivo para o servidor, depois q o arquivo estiver uma pasta temporaria (obtido dentro de $_FILE). ai sim, é que ele vai enviar para a FTP... sendo assim, como o navegador tem que enviar para o servidor primeiramente, o limite PHP vai interferir sim...

Compartilhar este post


Link para o post
Compartilhar em outros sites

hm..... pode ser... n me toquei disso... ateh pq pra faze upload usa a função como o arquivo ja caregado no server... =]

vlw - aprendi uma nova ^^

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.