2014-01-05 4 views
1

저는 FTP에 익숙하지 않아 로컬에 저장된 파일을 보려면 파일을 다운로드하려고합니다. 그러나 첫 번째 부분은 PHP가 포함 된 FTP에서 파일 다운로드

은이 코드를 사용 ... 정말 매끄럽게 진행되지 않습니다

 $conn_id = ftp_connect($ftp_server); 

     // login with username and password 
     $login_result = ftp_login($conn_id, $ftp_user, $ftp_pass); 

     // define some variables 
     $local_file = 'server.txt'; 
     $server_file = '/httpdocs/project/server/server.txt'; 

     // try to download $server_file and save to $local_file 
     if (ftp_get($conn_id, $local_file, $server_file, FTP_BINARY)) { 
      echo "Successfully written to this"; 
     } else { 
      echo "There was a problem"; 
     } 

을하지만, 나는 문제가 무엇인지 모르는 작동하지 않습니다. 권한이나 물건을 설정해야합니까? 나는 무엇이 잘못되었는지를 알 수 없으므로 이것이 나의 마지막 희망이된다.

내 실수는 어디에서 발생합니까? 이 코드 때문에 또는 다른 것입니까?

+0

.txt 파일 (FTP_ASCII도 옵션 임)에 대한 FTP_BINARY도 $ conn_id = ftp_connect ($ ftp_server) 또는 die ("연결하지 못했습니다")를 사용할 수 있습니다. –

+0

2 가지 가능한 문제 : 1) 연결되지 않음 또는 2) 파일 이름/경로가 올바르지 않음 – meda

+0

연결되어 있는지 확인했습니다. 두 번째 문제가 발생할 수 있습니다. $ server_file의 출처는 어디입니까? 내 문서 루트에서? – user2177152

답변

0

내 실수는 어디에서 왔습니까? 이 코드 때문에 또는 다른 것입니까?

코드가 완벽합니다. 내가 그것을 테스트했기 때문에 나는 알고있다.

이 가능한 문제 :이

  • 것은 ($server_file가) 정확하지 않은 파일 이름/경로 I 연결 부분을 확인했다

  • , 두 번째 문제는 할 수 있습니다 연결 아니에요

    1. . $ server_file의 출처는 어디입니까? 내 문서 루트에서?

    $server_file은 서버에서 다운로드 할 파일입니다. 당신 만이 정확한 경로를 알고 있습니다. 사용자가 액세스 할 수있는 디렉토리를 알 수 없기 때문에

    /httpdocs/project/server/server.txt이 파일의 올바른 경로인지 확인하십시오.

    +0

    글쎄,/httpdocs /는 내 문서 루트이고, 경로 안에 있어야하는지 아닌지? 아니면 전체 경로 http : // www.example.com/project/server/server.txt – user2177152

    +0

    @ user2177152 FileZilla를 사용하여 당신의 루트 폴더에'httpdocs' 디렉토리가 보이지 않는다면 당신이 틀린 것이 있다면 통로. '/'는 서버에게 루트 디렉토리를 찾도록 지시합니다. – meda

    +0

    내 루트 폴더에 있습니다 ... @meda – user2177152

    관련 문제