0

我想通过文件传递其他参数以保存在数据库中。当我输入代码以获取这些变量并保存在数据库中时,它会给我警报“SyntaxError:语法错误”......这是我的代码

$.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查询

4

1 回答 1

2

当您在 jQuery AJAX 调用的选项中指定 adataTypejson,您是在告诉代码服务器将返回有效的 JSON。基于此信息,jQuery 将隐式解析响应文本为 JSON,将结果对象作为回调函数的参数传递。

如果响应文本不是有效的 JSON,则解析将失败,而error将执行回调。正如评论中所指出的,您从 PHP 脚本返回的内容是无效的 JSON。

于 2013-03-06T16:22:41.287 回答