关于Uplodify与Jfinal搭配的一些问题

问题:post方式下,设置formData在后台取不到参数php

Uploadify与jFinal都使用了最新版本html

在使用Uploadify时,我尝试经过设置formData参数向后台传递一个存储上传文件的文件夹名称html5

代码以下:安全

$(function() {
			$('#file_upload').uploadify({
				'swf' : '/js/Uploadify/uploadify.swf',
				'uploader' : '/system/file/image',
				'buttonText' : "选择图片",
				'method' : "post", //指定文件上传时上传控件的提交方法,post 或者get
				'multi' : 'false', //指定在选择上传文件时,是否容许同时选中多个,true(能够选中多个,默认值),false(只能选中一个)

				//指定是否容许文件加入上传队列后自动开始上传, true(容许自动上传,默认值),false(关闭自动上传)
				'auto' : true,

				//指定检查文件是否已经存在的action,action返回值:1(存在),0(不存在)
				// 'checkExisting': '/system/file/checkexists',

				//指定文件上传大小的限制,能够传入数字与字符串,传入数字时,默认单位是kb,传入字符串时,要求值与单位一块儿传入(B, KB, MB, or GB)
				//若无限制,可指定为0(默认值)
				'fileSizeLimit' : 0,

				//指定在服务端用于获取该上传文件对象的名称,在php中可用$_FILES['the_files']
				'fileObjName' : 'upfile',

				//指定在弹出选择文件的对话框时,在可选文件类型下拉框中的选定值,默认:“All Files” ,需与fileTypeExts联合使用
				'fileTypeDesc' : 'All Files',

				//容许上传的文件扩展名列表,多个扩展名用分号分隔,这是不安全的,客户端手动更改文件扩展名,便可绕过验证,服务端仍需验证
				'fileTypeExts' : '*.gif; *.jpg; *.png',

				//在初始化时指定上传时,传递到服务端的参数,这里指定的参数每次上传都会传入,
				// 若要动态指定传入参数,可使用setting方法在onUploadStart事件中指定
				//服务端根据客户端采用get仍是post请求方式,来使用相应方法获取数据
				'formData': {"folder": "images"}				
			});
		});

在后台的action中尝试 使用getPara("folder")来获取参数“folder”,获取不到。post

网上有人说,先使用getFile获取文件而后,就能获取到参数了,一试,果真可行。url

可是有的时候须要先获取folder参数,咱们可使用get方式提交,这个时候,实际上是把参数做为queryString拼接到请求的url后面,也就是使用了url传参方式。spa

另外发现,若是在url后面传递一个其余的url参数,仍然使用post提交,则后台能正常获取数据。code

综合来讲,这应该是jfinal在处理传参时的一个小bug,并且html5有FormData API,不知道jFinal是否能正常取值?orm

但愿将来的JFinal能考虑修复吧。htm

相关文章
相关标签/搜索