我正在嘗試編寫一個PHP頁面,該頁面使用GET變量,它是FTP中的文件名並將其下載。但是,它似乎並不奏效。當echo語句正在運行時,函數本身(ftp_get)返回TRUE,但是沒有其他事件發生,並且在控制檯中沒有錯誤。腳本運行時無法從FTP服務器自動下載文件
<?php
$file = $_GET['file'];
$ftp_server = "127.0.0.1";
$ftp_user_name = "user";
$ftp_user_pass = "pass";
// set up a connection or die
$conn_id = ftp_connect($ftp_server) or die("Couldn't connect to $ftp_server");
// login with username and password
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);
if (ftp_get($conn_id, $file, $file, FTP_BINARY)) {
echo "Successfully written to $file\n";
} else {
echo "There was a problem\n";
}
?>
理想情況下,我會簡單地將它們鏈接到:ftp://example.com/TestFile.txt,它會下載該文件對他們來說,不過,那隻能說明他們的文件的內容在他們的瀏覽器,而不是下載。
我已經通過PHP手冊網站閱讀了FTP功能,並且我相信ftp_get是我正在使用的正確的一個。
有沒有這樣做的更簡單的方法,還是隻是我忽略的東西?
從手冊:「ftp_get()從FTP服務器檢索遠程文件,並將其保存到本地文件中。」本地是指運行PHP的機器,而不是客戶機的桌面機器。我不知道是否有比讀取保存的文件並將其輸出給用戶更簡單的方法。 – 2013-08-07 16:43:03
是'error_reporting(E_ALL); ini_set('display_errors','1');'on? – JohnnyJS
@Jeffman沒有辦法簡單地從FTP下載文件到用戶的PC上?它看起來不像是一個概念的牽強。 – user2547842