如何在 jquery 文件上传中重命名文件

How to rename file in jquery file upload

Hi i'm new to jquery. i'm trying to rename the file in upload..but i'm not able to do so

The Code i'm using for file upload

 $(function() {
var btnUpload=$('#upload');

var status=$('#status');
    new AjaxUpload(btnUpload, {
action: 'upload-file.php',
name: 'uploadfile',
    onSubmit: function(finalname, ext){
if (! (ext && /^(pdf|doc|docx|xls|xlsx|text|)$/.test(ext))){ 
status.text('Only pdf, xls,doc,docs,xlsx and text files are allowed');
return false;
}
status.text('Uploading...');
},
onComplete: function(finalname, response){
status.text('');
if(response==="success"){
$('#head').val(finalname);
} else{
status.text('Upload Failed');
}
    }
});

Php Code is

$uploaddir = 'uploads/files/'; 
$file = $uploaddir . basename($_FILES['uploadfile']['name']); 
if (move_uploaded_file($_FILES['uploadfile']['tmp_name'], $file)) { 
  echo "success"; 
} else {

    echo "error";
}

Html

<div id="upload" ><span>Browse<span></div><span id="status" ></span>
<input type="text" id="head" name="head" value="">

i am able to rename with php file...but not in jquery code it gives me wrong file name kindly help

I managed to rename the file name before upload...pepole down voted it inspite of helping. The changed i made to my code might be usefull for someone else

 $(function() {
    var btnUpload=$('#upload');
var status=$('#status');
var mm=Math.random().toString(36).substring(7) + new Date().getTime(); //to add new name of file
new AjaxUpload(btnUpload, {
action: 'upload-file.php?name='+mm, // gave a action to php file so i can use the same name
name: 'uploadfile',
onSubmit: function(file, ext){
 if (! (ext && /^(pdf|doc|docx|xls|xlsx|text|)$/.test(ext))){ 
status.text('Only pdf, xls,doc,docs,xlsx and text files are allowed');
return false;
}
status.text('Uploading...');
},
onComplete: function(file, response){
var fileExtension = '.' + file.split('.').pop(); //got the file extestion
var outputfile = file.substr(0, file.lastIndexOf('.')) || file; //got the file name
var spaceremoved=outputfile.replace(/\s/g, '');//removed the space from file
var filename=mm+spaceremoved+fileExtension; //merged all to one
    status.text('');
if(response==="success"){
    $('#head').val(filename);
    } else{
}
    }
    });

changes i made in php file

$uploaddir = 'uploads/files/'; 
if(isset($_GET['name'])){
$filena=$_GET['name'];
}
$basename=$filena.basename($_FILES['uploadfile']['name']);//merged the name
$finalna=preg_replace('/\s+/', '', $basename);//removed the space
$file = $uploaddir .$finalna;// merged to final 
if (move_uploaded_file($_FILES['uploadfile']['tmp_name'], $file)) { 
  echo "success"; 
} else {
    echo "error";
}