2012-04-06 214 views
1

我有一个问题,上传多个文件到我的ftp服务器,我使用jQuery的多文件扩展名。使用jquery.MultiFile上传多个文件到FTP服务器

这是与多文件上传表单(file_upload.php)页面上的JavaScript代码:

<script type="text/javascript"> 
    $(function(){ // wait for document to load 
    $('.remove').MultiFile({ 
     STRING: { 
     remove: '<img src="images/upload-remove.png" height="16" width="16" alt="x"/>', 
     denied:'You can't choose file $ext .\nTry again...', 
     file:'$file', 
     selected:'Chosen file: $file', 
     duplicate:'This file is already chosen:\n$file' 
     } 
    }); 
    }); 
</script> 

这是HTML表单(file_upload.php):

<form name="uploader" action="file_upload2.php" method="post" enctype="multipart/form-data"> 
    <fieldset> 
     <label for="file">Upload file:</label> 
     <br /> 
      <input type="file" class="multi, remove" name="file[]" value="Upload file" /> 
      <input type="submit" value="submit"/> 
    </fieldset> 
</form> 

的PHP部分是我不明白的地方。我试着用这个代码(file_upload2.php)做到这一点:

<?php 
if(isset($_POST['submit'])) 
{ 
    $ftp_config['server'] = 'ftpserver.org'; //ftp host 
    $ftp_config['username'] = 'ftp_username'; // ftp username 
    $ftp_config['password'] = 'ftp_password'; // ftp user password 
    $ftp_config['web_root'] = 'public_html'; //foldername from user home dir. 

    $fileElementName = 'file[]'; //file field name 

    $conn_id = ftp_connect($ftp_config['server']); 
    $ftp_login = ftp_login($conn_id,$ftp_config['username'],$ftp_config['password']); 

    if(!ftp_put($conn_id,$ftp_config['web_root'].'/'.$_FILES[$fileElementName]['name'],$_FILES[$fileElementName]['tmp_name'],FTP_BINARY)){ 
     $result = " Error occurred. "; 
    }else{ 
     $result = " File has been uploaded. "; 
    } 
    echo $result; 
} 
?> 

回答

0

您可以通过$_FILES必须环路已上载的每个文件。

做一个print_r($_FILES);看看你有什么合作。

+0

谢谢!它适用于foreach循环。 – user1158882 2012-04-06 23:14:38