我很好奇如何使用PHP通過FTP上傳文件。比方說,我有上傳表單和用戶上傳了一個文件。如何將文件(無需從臨時目錄移動)傳輸到使用PHP的某個FTP主機?使用PHP通過FTP上傳文件
12
A
回答
18
在這裏你去:處理略去了
$ftp = ftp_connect($host,$port,$timeout);
ftp_login($ftp,$user,$pass);
$ret = ftp_nb_put($ftp, $dest_file, $source_file, FTP_BINARY, FTP_AUTORESUME);
while (FTP_MOREDATA == $ret)
{
// display progress bar, or someting
$ret = ftp_nb_continue($ftp);
}
// all done :-)
錯誤。
2
查看PHP網站上的FTP section - 這非常有幫助。
13
下面是一個代碼示例
$ftp_server="";
$ftp_user_name="";
$ftp_user_pass="";
$file = "";//tobe uploaded
$remote_file = "";
// set up basic connection
$conn_id = ftp_connect($ftp_server);
// login with username and password
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);
// upload a file
if (ftp_put($conn_id, $remote_file, $file, FTP_ASCII)) {
echo "successfully uploaded $file\n";
exit;
} else {
echo "There was a problem while uploading $file\n";
exit;
}
// close the connection
ftp_close($conn_id);
3
這裏有一個函數來爲你做它。
function uploadFTP($server, $username, $password, $local_file, $remote_file){
// connect to server
$connection = ftp_connect($server);
// login
if (@ftp_login($connection, $username, $password)){
// successfully connected
}else{
return false;
}
ftp_put($connection, $remote_file, $local_file, FTP_BINARY);
ftp_close($connection);
return true;
}
用法:
uploadFTP("127.0.0.1", "admin", "mydog123", "C:\\report.txt", "meeting/tuesday/report.txt");
2
如何通過捲曲上傳? (注意:你也可以使用curl作爲SFTP,FTPS)
<?php
$ch = curl_init();
$localfile = '/path/to/file.zip';
$remotefile = 'filename.zip';
$fp = fopen($localfile, 'r');
curl_setopt($ch, CURLOPT_URL, 'ftp://ftp_login:[email protected]/'.$remotefile);
curl_setopt($ch, CURLOPT_UPLOAD, 1);
curl_setopt($ch, CURLOPT_INFILE, $fp);
curl_setopt($ch, CURLOPT_INFILESIZE, filesize($localfile));
curl_exec ($ch);
$error_no = curl_errno($ch);
curl_close ($ch);
if ($error_no == 0) {
$error = 'File uploaded succesfully.';
} else {
$error = 'File upload error.';
}
?>
相關問題
- 1. 使用PHP上傳一個文件夾通過FTP使用PHP
- 2. 通過FTP在php上傳文件
- 3. 通過ftp上傳文件
- 4. 上傳文本文件到谷歌上傳通過PHP FTP PUT
- 5. 如何通過FTP使用PHP上傳文件的URL?
- 6. 如何使用ftp連接通過PHP cURL上傳文件?
- 7. 使用php,JS&ajax通過ftp上傳文件
- 8. 使用PHP通過FTP上傳實時文件
- 9. 使用PHP通過基於Web的ftp上傳文件
- 10. 使用cmd通過ftp傳輸文件
- 11. 通過php使用ftp細節上傳php文件正在執行php,而不是上傳原始php文件
- 12. 使用php下載文件通過ftp
- 13. 使用php上傳FTP文件
- 14. 上傳文件到通過FTP
- 15. FTP上傳文件通過SSL C#
- 16. Bash腳本通過FTP上傳文件
- 17. 通過FTP上傳文件片段
- 18. 如何通過FTP上傳文件夾?
- 19. Java - 通過FTP上傳文件夾?
- 20. CURL通過FTP上傳空白文件
- 21. Compact Framework文件通過FTP上傳
- 22. 無法使用FTP下載文件,通過PHP上傳文件後
- 23. 使用PHP通過ajax上傳文件
- 24. FTP多文件上傳PHP
- 25. 使用ftp上傳文件
- 26. 通過PHP上傳文件
- 27. php通過ftp大量上傳
- 28. 通過PHP上傳FTP表格
- 29. FTP通過PHP上傳和下載
- 30. 通過PHP FTP上傳整個目錄
你的縮進怎麼了? – jwueller 2010-12-02 13:24:31
對不起,現在好了 – 2010-12-02 13:40:39