0
所以我得到了這個代碼,它假設從遠程主機上的/ upload /文件夾中獲取所有內容並將其複製到文件所在的位置。代碼如下所示:通過ftp的PHP同步給出錯誤
<?php
$ftp_server = "server";
$conn_id = ftp_connect ($ftp_server)
or die("Couldn't connect to $ftp_server");
$login_result = ftp_login($conn_id, "user", "password");
if ((!$conn_id) || (!$login_result))
die("FTP Connection Failed");
ftp_sync ("/update/");
ftp_close($conn_id);
function ftp_sync ($dir) {
global $conn_id;
if ($dir != ".") {
if (ftp_chdir($conn_id, $dir) == false) {
echo ("Change Dir Failed: $dir<BR>\r\n");
return;
}
if (!(is_dir($dir)))
mkdir($dir);
chdir ($dir);
}
$contents = ftp_nlist($conn_id, ".");
foreach ($contents as $file) {
if ($file == '.' || $file == '..')
continue;
if (@ftp_chdir($conn_id, $file)) {
ftp_chdir ($conn_id, "..");
ftp_sync ($file);
}
else
ftp_get($conn_id, $file, $file, FTP_BINARY);
}
ftp_chdir ($conn_id, "..");
chdir ("..");
}
?>
當我在一個空文件夾中運行它,它做什麼它猜想。但是,如果我在包含來自/ update /的文件的文件夾中運行它,它會給我兩個錯誤。這些錯誤下面列出
Warning: mkdir() [function.mkdir]: Permission denied in /home/limited/public_html/download.php on line 25
Warning: chdir() [function.chdir]: No such file or directory (errno 2) in /home/limited/public_html/download.php on line 26
它的假設只是覆蓋用新的文件,而不是拋出錯誤。
謝謝
添加寫權限的文件夾好,我跑這個劇本來自「url.com/download.php」任何人,嘗試過那裏。所以如果我想這樣運行,我必須用擁有權限的用戶登錄到網站本身。 :○ –