使用Uploadify发送表单数据的问题

我正在尝试使用scriptData使用uploadify发送表单的附加数据,但它不会向后端PHP脚本发送任何内容。 有人可以帮我吗? 这是我正在尝试的..

使用Javascript:

 $(document).ready(function() { $("#fileUpload").fileUpload({ 'uploader': 'uploadify/uploader.swf', 'cancelImg': 'uploadify/cancel.png', 'script': 'uploadify/upload.php', 'folder': 'files', 'multi': false, 'displayData': 'speed', 'scriptData' : {'name' : $('#name').val()}, onComplete: function (evt, queueID, fileObj, response, data) { alert("Successfully uploaded: "+response); } }); });  

HTML:

 Name: 
You have a problem with your javascript
Start Upload | Clear Queue

upload.php的

(我已经尝试过POST和GET方法,没有一个工作)。

 $name = $_GET['name']; or $name = $_POST['name']; 

我非常感谢你的帮助。

我知道这有点晚了,但我试图让自己开始工作,并尝试做同样的事情。

您无法使用jQuery选择器在Uploadify的初始设置中获取“Name”的值:

 'scriptData' : {'name' : $('#name').val()} 

这是一个时间问题。 在评估jQuery选择器时,页面刚刚完成加载,并且“Name”文本框(我假设)为空。 上传时不会重新评估它。

但是,您可以随时更新脚本数据,包括在上载发生之前:

 $('#myUpload').uploadifySettings('scriptData', {'Id':$('#IdTextBox').val() }); $('#myUpload').uploadifyUpload(); 

这样,您可以提取表单数据并将其与上传一起传递。 这是最简单的例子,多个文件上传会变得更复杂,但这应该足以让某人开始。

我想你忘了'fileDataName' : 'photo'

你也没有'method' : 'post'选项,你可以根据它访问scrpitData作为GETPOST

在后端,您可以通过$_FILES['photo']访问文件;

您还需要检查这些文件是否存在于其相对路径中。

 'uploader': 'uploadify/uploader.swf', 'cancelImg': 'uploadify/cancel.png', 'script': 'uploadify/upload.php',