大佬教程收集整理的这篇文章主要介绍了jQuery AJAX文件上传PHP,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
您需要在服务器上运行的脚本来将文件移动到上载目录。jqueryAJAX
方法(在浏览器中运行)将表单数据发送到服务器,然后服务器上的脚本处理上载。这是一个使用php的示例。
您的HTML很好,但是将您的Js jquery脚本更新为如下所示:
$('#upload').on('click', function() {
var file_data = $('#sortpicture').prop('files')[0];
var form_data = new FormData();
form_data.append('file', file_data);
alert(form_data);
$.AJAX({
url: 'upload.php', // point to server-sIDe php script
dataType: 'text', // what to expect BACk from the php script, if anything
cache: false,
ContentType: false,
processData: false,
data: form_data,
type: 'post',
success: function(php_script_responsE){
alert(php_script_responsE); // display response from the php script, if any
}
});
});
upload.php :一个在服务器上运行并将文件定向到上载目录的php脚本:
<?php
if ( 0 < $_fileS['file']['error'] ) {
echo 'Error: ' . $_fileS['file']['error'] . '<br>';
}
else {
move_uploaded_file($_fileS['file']['tmp_name'], 'uploads/' . $_fileS['file']['name']);
}
?>
另外,关于目标目录的几件事:
@H_403_22@还有关于upload.php脚本中@H_375_3@move_uploaded_file使用的php函数的一些知识:
@H_375_3@move_uploaded_file( // this is where the file is temporarily stored on the server when uploaded // do not change this $_fileS['file']['tmp_name'], // this is where you want to put the file and what you want to name it // in this case we are putTing in a directory called "uploads" // and giving it the original filename 'uploads/' . $_fileS['file']['name'] );
$_fileS['file']['name']
是文件上传时的名称。您不必使用它。您可以为文件指定所需的任何名称(与服务器文件系统兼容):
@H_375_3@move_uploaded_file( $_fileS['file']['tmp_name'], 'uploads/my_new_filename.whatever' );
最后,请注意您的phpupload_max_filesize
ANDpost_max_size
配置值,并确保您的测试文件不超过两个。这是一些帮助您检查php配置以及如何设置最大文件大小和发布设置的帮助。
我想在我的Intranet页面上实现一个简单的文件上传,并使用最小的设置。
这是我的HTML部分:
<input id="sortpicture" type="file" name="sortpic" />
<button id="upload">Upload</button>
这是我的JS jquery脚本:
$("#upload").on("click",function() {
var file_data = $("#sortpicture").prop("files")[0];
var form_data = new FormData();
form_data.append("file",file_data);
alert(form_data);
$.ajax({
url: "/uploads",dataType: 'script',cache: false,contentType: false,processData: false,data: form_data,type: 'post',success: function(){
alert("works");
}
});
});
网站的根目录中有一个名为“ uploads”的文件夹,具有“用户”和“ IIS_users”的更改权限。
当我选择具有文件格式的文件并按上载按钮时,第一个警报返回“ [object FormData]”。第二个警报不会被调用,“上传”文件夹也为空!
有人可以帮助我找出问题所在吗?
下一步也应该是,使用服务器端生成的名称重命名该文件。也许有人也可以给我解决方案。
以上是大佬教程为你收集整理的jQuery AJAX文件上传PHP全部内容,希望文章能够帮你解决jQuery AJAX文件上传PHP所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。