首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >jQuery文件上传不上传

jQuery文件上传不上传
EN

Stack Overflow用户
提问于 2015-11-20 16:53:08
回答 1查看 1.1K关注 0票数 0

当我使用HTML时,这个<input type="file">代码是有效的,但是当我在最底层使用jQuery文件上传脚本时,就不起作用了。

  1. 我相信所有的.js & .css文件都已被确认并正常工作(测试)
  2. 我相信fileInputName:uploadUrl:’docupad.php‘, 'userfile’是正确的。不知道因为没有任何错误。
  3. 使用回波getcwd();,我相信我使用的是正确的路径
  4. 我只上传了一个1kb的.TXT文件
  5. 我没有错误,所有的错误报告都是开着的,最高的。

还有一件事情也不起作用,我想说的是,文件名旁边的“上传和取消”按钮并没有全部显示,尽管点击它们看起来确实有效。

Echo‘’ing $_POST在提交时没有向我展示任何东西,但我认为这是一个javascript的东西;不确定,因为我是一个初学者(3个月)。

PHP页面

代码语言:javascript
复制
    $filename = $_FILES['userfile']['name'];
    $tmpname  = $_FILES['userfile']['tmpname'];
    $filesize = $_FILES['userfile']['size'];
    $filetype = $_FILES['userfile']['type'];

    $fp = fopen($tmpname, 'r');
    $content = fread($fp, filesize($tmpname));
    $content = addslashes($content);
    fclose($fp);

    if(!get_magic_quotes_gpc()) {

        $filename = addslashes($filename);
    }

    $filename = preg_replace('/[ ]/', '~', $filename);

    $document_folder = $_SESSION['users_id'];
    $destfile = "../_documents/".$document_folder."/".$_FILES['userfile']['name'];
    move_uploaded_file( $_FILES['userfile']['tmpname'], $destfile );

HTML页面

代码语言:javascript
复制
<link type="text/css" rel="Stylesheet" href="../jqx.base.css" />

<script type="text/javascript" src="../scripts/js/jquery-1.11.1.min.js"></script>
<script type="text/javascript" src="../scripts/jqwidgets/jqxcore.js"></script>
<script type="text/javascript" src="../scripts/jqwidgets/jqxbuttons.js"></script>
<script type="text/javascript" src="../scripts/jqwidgets/jqxfileupload.js"></script>

<script type="text/javascript">


        $(document).ready(function () {
      $('#jqxFileUpload').jqxFileUpload({ width: 300, uploadUrl: 'doc_upload_jquery.php', fileInputName: 'userfile', autoUpload: true });
        });



    $('#jqxFileUpload').on('uploadStart', function (event) {
            var fileName = event.args.file;
            $('#log').prepend('Started uploading: <strong>' + fileName + '</strong><br />');
    });



    $('#jqxFileUpload').on('remove', function (event) {
            var fileName = event.args.file;
        $('#log').prepend('Removed file: <strong>' + fileName + '</strong><br />');

    });



    $('#jqxFileUpload').on('uploadEnd', function (event) {
        var args = event.args;
        var fileName = args.file;
        var serverResponce = args.response;
    });



</script>


</head>
<body>
<div id="jqxFileUpload">
</div>
<div id="log" style="margin-top: 20px;"></div>
<br />
</body>
</html>
EN

回答 1

Stack Overflow用户

发布于 2015-11-20 17:08:19

姆帕罗-

由于顶部的if语句,您可能没有得到任何错误或输出:

代码语言:javascript
复制
if (isset($_POST['submit']) && $_FILES['userfile']) {

尝试将其放在顶部以输出所有post变量,以便确定实际发送了哪些post变量(如果有的话):

代码语言:javascript
复制
print_r($_POST);

我以前做过文件上传,但没有使用这个特定的库-我猜它只是发送多部件数据而不是POST变量。查看浏览器开发工具中的预览头,还可以了解所发送的数据。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33832002

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档