cmdmss Posted December 28, 2011 Report Share Posted December 28, 2011 Caros colegas, bom dia.Tenho um arquivo no meu C: chamado 23.jpg. O caminho é C:\23.jpgQuero transferi-lo para um servidor por meio de ftp, estou fazendo o script aqui mas não quer funcionar por nada!$dados = array( "host"=>"***", "usuario"=>"***", "senha"=>"***"); $fcon = ftp_connect($dados["host"]); ftp_login($fcon,$dados["usuario"],$dados["senha"]); ftp_put($fcon,"23.jpg","c:/23.jpg",FTP_BINARY); ftp_quit($fcon);E quando eu executo, o seguinte erro é passado.Warning: ftp_put(c:/23.jpg) [function.ftp-put]: failed to open stream: No such file or directory in /var/www/vhosts/... on line 12.já fiz varios testes e nada adiantou...alguém pode me dar a luz no fim do tunel? Quote Link to comment Share on other sites More sharing options...
0 mJi Posted December 28, 2011 Report Share Posted December 28, 2011 O caminho do arquivo deve ser relativo ao diretório raiz do servidor. Quote Link to comment Share on other sites More sharing options...
0 cmdmss Posted December 28, 2011 Author Report Share Posted December 28, 2011 OK...Eu não tenho acesso ao caminho raiz do servidor... como faço para transferir um arquivo de meu computador para este servidor pelo PHP? Quote Link to comment Share on other sites More sharing options...
0 ESerra Posted December 28, 2011 Report Share Posted December 28, 2011 $_SERVER['DOCUMENT_ROOT'] vai te retornar o caminho completo até a pasta, basta jogar um arquivo PHP com isto na pasta que você quer usar e acessar o arquivo. Quote Link to comment Share on other sites More sharing options...
0 cmdmss Posted December 28, 2011 Author Report Share Posted December 28, 2011 Bacana ESerra... muito obrigado por esta informação..!!!Mudei a tática e estou fazendo com move_uploaded_files.Estou usando o seguinte script para fazerfunction manda_arq($arquivo,$caminho){ if(!(empty($arquivo))){ $arquivo1 = $arquivo; $arquivo_minusculo = strtolower($arquivo1['name']); $caracteres = array("ç","~","^","]","[","{","}",";",":","´",",",">","<","-","/","|","@","$","%","ã","â","á","à","é","è","ó","ò","+","=","*","&","(",")","!","#","?","`","ã"," ","©"); $arquivo_tratado = str_replace($caracteres,"",$arquivo_minusculo); $destino = $caminho."/".$arquivo_tratado; move_uploaded_file($arquivo1['tmp_name'],$destino); } } if($_POST["ok"]){ manda_arq($_FILES["arq1"],"/var/www/vhosts/totemcomunicacao.com.br/httpdocs/SistemaCongresso/images"); } ?> <form method="post" action="aux.php" enctype="multipart/form-data" name="form" onsubmit="return verifica()"> <input type="hidden" name="MAX_FILE_SIZE" value="10000000000000000000000000000000000000" /> Anexo 1:<input type="file" name="arq1" value="1" /><input type="submit" value="ok" name="ok" /> </form>Porem, não está transmitindo o arquivo e nem retornando mensagens de erro.... !!! :wacko: Quote Link to comment Share on other sites More sharing options...
0 ESerra Posted December 28, 2011 Report Share Posted December 28, 2011 E nem vai funcionar, pois você quer enviar de "A" para "B", o move_uploaded_file só funciona no próprio servidor... Quote Link to comment Share on other sites More sharing options...
0 cmdmss Posted December 28, 2011 Author Report Share Posted December 28, 2011 Sim... foi o que eu pensei...de qualquer forma, eu usei a função q você me mostrou, e saiu o seguinte diretorio/var/www/vhosts/site.com.br/httpdocs/Pus esse caminho la no ftp_put e mesmo assim não funcionou...eis o codigoftp_put($fcon,'c:/23.jpg',"/var/www/vhosts/site.com.br/httpdocs/Sistema/images/",FTP_BINARY);Lembrando que o arquivo do meu computador está no c... o que está errado aqui?? já coloquei ate um ventilador na minha cabeça de tão quente q já esta aqui.... :blink: Quote Link to comment Share on other sites More sharing options...
0 AndersonFachini Posted December 30, 2011 Report Share Posted December 30, 2011 (edited) Sim... foi o que eu pensei...de qualquer forma, eu usei a função q você me mostrou, e saiu o seguinte diretorio/var/www/vhosts/site.com.br/httpdocs/Pus esse caminho la no ftp_put e mesmo assim não funcionou...eis o codigoftp_put($fcon,'c:/23.jpg',"/var/www/vhosts/site.com.br/httpdocs/Sistema/images/",FTP_BINARY);Lembrando que o arquivo do meu computador está no c... o que está errado aqui?? já coloquei ate um ventilador na minha cabeça de tão quente q já esta aqui.... :blink:Olá,O erro está acontecendo porque a ordem dos parâmetros dos nomes dos arquivos está errada... o caminho do arquivo remoto vem antes do caminho do arquivo local... eu fiz um teste aqui e no caminho do arquivo remoto eu nem precisei informar o caminho por extenso, apenas o nome do arquivo Edited December 30, 2011 by AndersonFachini Quote Link to comment Share on other sites More sharing options...
Question
cmdmss
Caros colegas, bom dia.
Tenho um arquivo no meu C: chamado 23.jpg. O caminho é C:\23.jpg
Quero transferi-lo para um servidor por meio de ftp, estou fazendo o script aqui mas não quer funcionar por nada!
E quando eu executo, o seguinte erro é passado.
Warning: ftp_put(c:/23.jpg) [function.ftp-put]: failed to open stream: No such file or directory in /var/www/vhosts/... on line 12.
já fiz varios testes e nada adiantou...
alguém pode me dar a luz no fim do tunel?
Link to comment
Share on other sites
7 answers to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.