【问题标题】:Why Jquery image uploader doesn't upload image为什么 Jquery 图片上传器不上传图片
【发布时间】:2016-07-11 01:11:33
【问题描述】:

此代码取自AJAX Image upload using PHP 我已将代码复制到以下文件:index.html、style.css、script.js、ajax_php_file.php 并下载了 NoImage.jpg。然后我从我的 PC 中选择了图像,并且照片已在客户端更改为所选图像。然后我点击上传,没有文件上传到调用 php 脚本的文件夹。在 Firefox 32 Firebug 控制台中测试,没有报告错误。我也用 Jquery 2.2.2 试过这个,错误告诉我 e.preventDefault();被贬低了。因此,您能告诉我代码有什么问题吗?它也不会在 Opera 中上传。我看到有更多的人在脚本的原始页面上问这个问题,但答案没有得到回应。

我尝试在reader.readAsDataURL(this.files[0]); 之后添加此代码$("#uploadimage").submit();,但这也无济于事。

这里是一个活生生的例子: http://kod.djpw.cz/vpvb

还有来自控制台的代码。如果我编辑这个函数:

  function imageIsLoaded(e) {
    $("#file").css("color","green");
    console.log($("#file"));
    $('#image_preview').css("display", "block");
    console.log($('#image_preview'));
    $('#previewing').attr('src', e.target.result);
    console.log($('#previewing'));
    $('#previewing').attr('width', '250px');
    $('#previewing').attr('height', '230px');
  };

我看到了:

Object { 0: <input#file>, length: 1, context: HTMLDocument → index.html, selector: "#file" } script.js:45
Object { 0: <div#image_preview>, length: 1, context: HTMLDocument → index.html, selector: "#image_preview" } script.js:47
Object { 0: <img#previewing>, length: 1, context: HTMLDocument → index.html, selector: "#previewing" } script.js:49

【问题讨论】:

    标签: php jquery ajax image-uploading


    【解决方案1】:

    我忙于解决JS,没有意识到上传必须通过ajax_php_file.php固定在服务器端。当我挖掘代码时,我看到了行

    if (file_exists("upload/" . $_FILES["file"]["name"])) {
      echo $_FILES["file"]["name"] . " <span id='invalid'><b>already exists.</b></span> ";
    

    所以这意味着我需要在与 php 脚本位置相同的文件夹中创建“上传”文件夹。这是一个简单的修复,但它不在原始代码描述中。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-03-19
      • 1970-01-01
      • 2012-01-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-01-22
      相关资源
      最近更新 更多