Saya memuat naik fail XML melalui FTP:
$ftp = "ftp"; $nama pengguna = "nama pengguna"; $pwd = "Kata Laluan"; $nama fail = $_FILES[$xyz][$abc]; $tmp = $_FILES['fail']['tmp_name']; $destination = "/Content/EnquiryXML "; $connect = ftp_connect($ftp)or die("Tidak dapat menyambung ke hos"); ftp_login($connect,$username,$pwd)atau die("Kebenaran gagal"); echo "Bersambung!
"; jika(!$nama fail) { echo "Sila pilih fail"; } lain { ftp_put($connect,$destination.'/'.$filename,$tmp,FTP_ASCII)atau die("Tidak dapat memuat naik"); echo "Fail berjaya dimuat naik ke FTP"; }
Saya mahu menghantar fail XML yang dibuat menggunakan DOMDocument
Ini berjaya:
membawa kepada
Dipanggil selepasftp_put
(或任何其他传输命令,如ftp_get
、ftp_nlist
、ftp_rawlist
、ftp_mlsd
)出现问题的最常见原因是PHP默认为主动模式。在99%的情况下,需要切换到被动模式才能使传输正常工作。使用ftp_pasv
fungsi.ftp_pasv
必须在ftp_login
. Memanggilnya sebelum ini tidak memberi kesan.Lihat juga:
Selain itu, jika pelayan FTP anda melaporkan alamat IP yang salah semasa membalas
PASV
arahan (ini agak biasa jika pelayan berada di belakang firewall/NAT), anda mungkin perlu menyelesaikannya dengan menggunakan:LihatPHP FTP + pelayan FTP pasif di belakang NAT.
Walaupun dalam kes ini penyelesaian yang betul adalah untuk membetulkan pelayan.