我试图将mp3文件上传到我的ftp服务器:
$data = substr($_POST['data'], strpos($_POST['data'], ",") + 1);
$decodedData = base64_decode($data);
$filename = urldecode($_POST['fname']);
$cid = ftp_connect("foo.com");
$result = ftp_login($cid, "rodrigo@foo.com","password");
if ((!$cid) || (!$result)) {
echo "connection failed"; die;
} else {
echo "connected";
}
ftp_pasv ($cid, true);
ftp_chdir($cid, "my_folder");
if (ftp_put($cid, $filename, $decodedData, FTP_BINARY)) {
//...
} else {
//...
}
我有这个警告:
Warning: ftp_put(���) [function.ftp-put]: failed to open stream: Invalid argument in...
我无法找到如何发送有效参数
答案 0 :(得分:0)
您需要创建一个可以传递的文件,下面的示例将文件写入内存而不是磁盘上的文件...但您可能希望根据大小将其写入磁盘。
$tmp = fopen('php://memory', 'r+');
fputs($tmp, $decodedData);
rewind($tmp);
if (ftp_fput($cid, $filename, $tmp, FTP_BINARY)) {
}