tp5.0ajax提交数据,thinkphp5 + ajax 使用formdata提交数据(包括文件上传) 后台返回json完整实例...

本文介绍了如何在ThinkPHP5框架下,结合Ajax和FormData实现表单数据及文件的上传,并返回JSON响应。文章中提到了前端jQuery Ajax提交表单的代码,以及后端PHP如何接收并返回JSON数据。在解决问题部分,指出了因使用非JSON标准格式的函数(如dump())导致的前端SyntaxError,并提供了去除此类函数的解决方案。
摘要由CSDN通过智能技术生成

本文实例讲述了thinkphp5 + ajax 使用formdata提交数据(包括文件上传) 后台返回json。分享给大家供大家参考,具体如下:

知识点总结

1.json格式标准

{

'key':"value"

}

{"state":"1","msg":"\u7b80\u5386\u6295\u9012\u6210\u529f\uff01"}

20200302123507112.png

20200302123507113.png

前端jquery ajax提交formdata

$.ajax({

})

20200302123507114.png

formdata 获取表单数据 包括文件上传

20200302123507115.png

HTML

姓名

手机号

附件简历:(您的详细信息请都写在简历上,只接受word文档)

选择要上传的简历

$(function() {

$('#doc-form-file').on('change', function() {

var fileNames = '';

$.each(this.files, function() {

fileNames += '' + this.name + ' ';

});

$('#file-list').html(fileNames);

});

});

提交

返回

JS

function submitform() {

event.preventDefault();

var form =document.getElementById('recruitinfo'),

formdata = new FormData(form);

var url = '{:url("recruitinfo/postfrom")}';

$.ajax({

url:url,

type:'post',

data:formdata,

dataType:'json',

processData:false,

contentType:false,

success:function (res) {

console.log('请求成功!')

console.log(res)

},

error:function (XMLHttpRequest, textStatus, errorThrown) {

console.log('出错啦!')

console.log(XMLHttpRequest);

console.log(textStatus);

console.log(errorThrown);

}

})

}

php json_encode()函数转成json

$callbackinfo = array(

'state' => '1',

'msg' => '简历投递成功!',

);

$jsondata =json_encode($callbackinfo);

echo $jsondata;

问题

1.前端SyntaxError: Unexpected token < in JSON at position 0 报错

报错原因

使用的thinkphp5

没想到是因为使用了dump()函数 var_dump 这些最后echo出来的不正确导致的,还要要按标准格式来啊

解决方法

去掉dump相似的函数

更多关于thinkPHP相关内容感兴趣的读者可查看本站专题:《ThinkPHP入门教程》、《thinkPHP模板操作技巧总结》、《ThinkPHP常用方法总结》、《codeigniter入门教程》、《CI(CodeIgniter)框架进阶教程》、《Zend FrameWork框架入门教程》及《PHP模板技术总结》。

希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。

您可能感兴趣的文章:TP5(thinkPHP5)框架基于ajax与后台数据交互操作简单示例

thinkPHP5 ajax提交表单操作实例分析

thinkPHP5框架实现基于ajax的分页功能示例

Thinkphp5框架ajax接口实现方法分析

ThinkPHP5 通过ajax插入图片并实时显示(完整代码)

TP5(thinkPHP5)框架使用ajax实现与后台数据交互的方法小结

ThinkPHP5.1+Ajax实现的无刷新分页功能示例

ThinkPHP表单自动提交验证实例教程

ThinkPHP 防止表单重复提交的方法

ThinkPHP提交表单时默认自动转义的解决方法

thinkphp3.2实现在线留言提交验证码功能

ThinkPHP防止重复提交表单的方法实例分析

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值