2011-05-25 86 views
0

再一次,我需要一些非常感謝的專家幫助:) 我試圖使用PHP的FTP函數通過Web窗體將文件上傳到服務器,在Google上搜索一個簡單的教程,但大多數人似乎都期望對該過程有一定程度的瞭解。所以,我找到了一個我相信會爲我做這項工作的例子,但我坦率地不明白如何調製ftp路徑?使用PHP通過基於Web的ftp上傳文件

這裏的腳本,在它的全部(我發現它在Tech共和國)

<? 
// get FTP accessparameters 
$host = "<URL of site>"; 
$user = "[email protected]<URL of site>"; 
$pass = "<PASSWORD>"; 
$destDir= "www/uploads/files/"; 
$workDir= "/usr/local/temp"; // define this as perlocal system 
// get temporary file namefor the uploaded file 
$tmpName= basename($_FILES['ufile']['tmp_name']); 
// copy uploaded file intocurrent directory 
move_uploaded_file($_FILES['ufile']['tmp_name'], $workDir."/".$tmpName) or die("Cannot move uploaded file toworking directory"); 
// open connection 
$conn= ftp_connect($host) or die ("Cannot initiate connection tohost"); 
// send access parameters 
ftp_login($conn,$user, $pass) or die("Cannot login"); 
// perform file upload 
$upload = ftp_put($conn, $destDir."/".$_FILES['ufile']['name'], $workDir."/".$tmpName, FTP_BINARY); 
// check upload status 
// display message 
if (!$upload) { 
    echo "Cannotupload"; 
} else { 
    echo "Uploadcomplete"; 
} 
// close the FTP stream 
ftp_close($conn); 
// delete local copy ofuploaded file 
unlink($workDir."/".$tmpName) or die("Cannot delete uploaded filefrom working directory -- manual deletion recommended"); 
?> 

在它與「不能上傳的文件移動到工作目錄」失敗的時刻 - 所以我假設的路徑不正確。 當這個特定用戶通過ftp連接時,他們的主目錄是「files」。

我欣賞這個建議。

回答以下

我有工作。 由於用戶的主目錄爲「文件」,它要求這個目錄中會有另外兩個目錄中名爲「文件」和「臨時」 我改變了上面的代碼: -

$destDir= "files"; 
$workDir= "temp"; 

,發現的例子一個ftp連接字符串向後工作,以便代碼生成正確的格式。 簡單,當你知道如何!

回答

0

我讓它工作。由於用戶的主目錄爲「文件」,它要求這個目錄中會有另外兩個目錄中名爲「文件」和「臨時」我改變了上面的代碼: -

$destDir= "files"; 
$workDir= "temp"; 

,發現了一個FTP的例子連接字符串向後工作,以便代碼生成正確的格式。很容易,當你知道如何!