【发布时间】:2012-03-21 10:17:36
【问题描述】:
嗨,我需要将一系列文件上传到服务器(特别是一组图像)。 我需要一个文件输入来选择多个文件(也在 IE 中),我没有权限直接在服务器上使用 PHP 编写(权限是 775,但 FTP 和 apache 用户属于 2 个不同的组)所以我需要使用 FTP连接(我已经能够使用单个文件执行此操作)。 如果有办法做到这一点,有人可以建议我吗? 提前致谢
米歇尔
编辑:我正在尝试按照 Nick 的建议使用 uploadify。
<script type="text/javascript">
$(document).ready(function() {
$('#file_upload').uploadify({
'uploader' : 'JS/uploadify.swf',
'script' : 'upload.php',
'cancelImg' : 'JS/cancel.png',
'folder' : 'TEST/UPLOADS',
'auto' : true,
'multiple' : true,
'removeCompleted' : false,
'queueSizeLimit' : 3,
'queueID' : 'queue',
'simUploadLimit' : 1
);
});
</script>
我试着把ftp连接和ftp_put放到upload.php中是不是?? 如果我尝试按照文档的建议添加“scriptData”参数,$_POST[] 无法访问它,为什么?
这里是我的测试链接:test
测试显示文件已上传,但服务器文件夹中没有文件。
这是我的upload.php代码:
if (!empty($_FILES)) {
$tempFile = $_FILES['Filedata']['tmp_name']; // 1
//$targetPath = $_SERVER['DOCUMENT_ROOT'] . $_REQUEST['folder'] . '/'; // 2
//$targetFile = str_replace('//','/',$targetPath) . $_FILES['Filedata']['name']; // 3
$ftp_server = "***"; //address of ftp server.
$ftp_user_name = "***"; // Username
$ftp_user_pass = "***"; // Password
$conn_id = ftp_connect($ftp_server);
ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);
ftp_pasv ( $conn_id, true );
if( ftp_fput($conn_id, 'TEST/' . $_FILES['Filedata']['name'], $tempFile, FTP_BINARY)){ // 4
echo true;
}else{
echo false;
}
ftp_close($conn_id);
} else {
echo false;
}
【问题讨论】:
标签: php javascript jquery ftp