2013-03-06 130 views
0

我想传递其他参数与文件保存在database.when我把代码来获取这些变量并保存在数据库中它给我警报“SyntaxError:语法错误”... 这里是我的代码SyntaxError:语法错误ajaxFileUpload jquery插件

$.ajaxFileUpload 
    ({ 
    url:'popup/doc_mydeal.php', 
    secureuri:false, 
    fileElementId:'deals_documents', 
    dataType: 'json', 
    data:{rand_key: $('#rand_key').val(), document_name: $('#document_name').val()}, 
    success: function (data, status) 
      { 
    if(typeof(data.error) != 'undefined') 
       { 
       if(data.error != '') 
       { 
       alert(data.error); 
       } 
      } 
      }, 
      error: function (data, status, e) 
      { 
       alert(e); 
      } 
     }) 

现在在doc_mydeal.php

$tempFile = $_FILES['deals_documents']['tmp_name']; 
$targetFile=$path.$_REQUEST['rand_key'].basename($_FILES['deals_documents']['name']); 
move_uploaded_file($tempFile,$targetFile); 

,这里是MySQL查询数据库中保存

+0

在PHP方面的任何错误? – mkaatman 2013-03-06 16:05:35

+0

错误在PHP,JS或其他地方? – robert 2013-03-06 16:05:54

+3

你的dataType是'json',但你不返回任何东西。 – Musa 2013-03-06 16:06:27

回答

2

当你在jQuery AJAX调用的选项中指定一个dataTypejson,告诉代码服务器将返回有效的JSON。根据这些信息,jQuery将隐式地将响应文本解析为JSON,并将结果对象作为回调函数的参数传递。

如果响应文字不是有效的JSON,则解析将失败,并且将执行error回调。正如在评论中指出的那样,你从PHP脚本返回的内容是无效的JSON。

+0

但为什么我的数据没有保存在mysql表中?格式化json并返回它稍后执行! – Methew 2013-03-06 16:45:41

+0

我只想返回文件名..我应该在双方做什么? – Methew 2013-03-06 16:55:13