首页 > 后端开发 > php教程 > 为什么我的 jQuery AJAX 文件上传到 PHP 不起作用?

为什么我的 jQuery AJAX 文件上传到 PHP 不起作用?

Susan Sarandon
发布: 2024-12-22 19:51:13
原创
790 人浏览过

Why Isn't My jQuery AJAX File Upload to PHP Working?

使用 PHP 进行 jQuery AJAX 文件上传

问题:

尝试 AJAX 文件上传使用jQuery和PHP,但文件没有上传,并且没有成功警报

解决方案:

  1. 服务器端脚本:

    上的 PHP 脚本服务器需要处理文件上传、接收表单数据并将文件保存在指定位置。例如:

    if (0 < $_FILES['file']['error']) {
        echo 'Error: ' . $_FILES['file']['error'] . '<br>';
    } else {
        move_uploaded_file($_FILES['file']['tmp_name'], 'uploads/' . $_FILES['file']['name']);
    }
    登录后复制

    确保上传目录有写权限。

  2. AJAX 调用:

    AJAX jQuery 脚本中的调用应指定服务器端脚本的 URL 来处理文件上传:

    $.ajax({
        url: 'upload.php', // Point to the server-side PHP script
        dataType: 'text', // Specify the expected response type (optional)
        cache: false,
        contentType: false,
        processData: false,
        data: form_data,
        type: 'post',
        success: function(php_script_response) {
            alert(php_script_response); // Display the response from the PHP script (optional)
        }
    });
    登录后复制

重命名服务器上的文件:

而不是 $_FILES['file']['name'],在 move_uploaded_file() 中使用您自己的服务器生成的文件名来重命名文件:

move_uploaded_file($_FILES['file']['tmp_name'], 'uploads/my_new_filename.whatever');
登录后复制

其他提示:

  • 确保 upload_max_filesize 和 post_max_size 的服务器配置设置适合上传文件的大小。
  • 测试脚本是否具有适当的权限并且可执行(CHMOD第755章)。

以上是为什么我的 jQuery AJAX 文件上传到 PHP 不起作用?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板