使用Ajax PHP不会将文件移动到其他位置

弗朗西·费尔南德斯(Frency Fernandez)

我尝试使用Ajax和PHP单击按钮后上传文件并将其移动到文件夹。确实会成功返回true,但是上载的文件不会移动到目标文件夹。这是Ajax上传的片段

btnsubmit   = $(".submit");

//the function for handling button click
     btnsubmit.click(function(){
            var file_data = $('#uploaded_img').prop('files')[0];   
            var form_data = new FormData();                  
            form_data.append('file', file_data);

            $.ajax({
                url: 'upload_img_custom.php',
                cache: false,
                contentType: false,
                processData: false,
                data: form_data,                         
                type: 'POST',
                success: function(php_script_response){
                    alert(php_script_response);
                }
            });
        });

这是PHP文件

<?php
    $upload_directory = "../uploads/Customized/";
    if (isset($_FILES['uploaded_img']))
    {
        $uploadedFileName=$_FILES['uploaded_img']['name'];
        $targetPath=time().$uploadedFileName; //time is concatenated to make filenames unique
        if($uploadedFileName != '')
        {
            $targetPath=time().$uploadedFileName;
            move_uploaded_file($uploadedFileName, $upload_directory."".$targetPath);
        }
    }
    header('Location: customize.php?upload=success');
?>

HTML(仅重要部分)

<form method=POST id=customize-form action ="" enctype=multipart/form-data>
     <div id=step3 class='options step'>
        <section class=section-title>Image</section>
        <div class=image-display><img id=image-disp src="" width=99 style="text-align:center" /></div> //div for displaying uploaded image
        <section style="margin-bottom:10px">
            <label class="paragraph-font2 full-width">Choose what you want on the top of your cake:</label>
        </section>
        <section style="margin-bottom:15px">
            <input class="paragraph-font2 full-width" type=file name=uploaded_img id=uploaded_img accept="image/*">
        </section>
    </div>
    <button type=submit class='btn btn-info action submit'><span class='glyphicon glyphicon-shopping-cart'></span> Add to cart</button>
</form>

我已经检查了上传限制。我要上传的文件只有170KB。我设置的上限为20M。“自定义”文件夹位于xampp htdocs中此项目的另一个文件夹内。

前鞋底

由于您将文件变量命名为“ file”(在JS中),因此您也应该在PHP代码中使用“ file”:

if (isset($_FILES['file']))

$uploadedFileName=$_FILES['file']['name'];

或者您更改JS部分:

form_data.append('uploaded_img', file_data);

并且您需要移动临时文件名,而不是原始文件名:

move_uploaded_file($_FILES['file']['tmp_name'], $upload_directory . $targetPath);

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何使用 Perl 将大于 300KB 的文件移动到其他位置

使用CSV文件将文件移动到其他目录

使用PHP将整个文件夹的文件移动到其他文件夹的最快方法

使用ScrollView滚动到其他位置

如何使用Azure数据工厂将场所文件移动到其他目录

如何使用“ stat”检测新文件,然后将其移动到其他目录?

Bash脚本使用awk或sed将文件中的特定行移动到其他行?

使用Go将文件移动到其他驱动器

使用python查找PDF和DOC文件并将其移动到其他目录

使用python将文件夹从文件夹列表移动到其他文件夹列表

使用osmdroid的离线地图不会移动到位置

Ajax不会将参数发送到php文件

Ajax不会将数据发送到PHP文件

将存储在excel文件中的数据和查询移动到外部源(本地)以供其他excel文件使用

如何使用Google Cloud功能获取文件内容并将文件移动到其他Google Cloud Storage

重命名多个文件,同时使用UNIX中的动态文件名将它们移动到其他目录

如何使用 JavaScript 选择内容并移动到其他元素?

如何使用批处理根据状态检查日志文件中的字符串并将文件移动到其他文件夹

使用AJAX从PHP检索数据以发送到其他PHP文件

使用AJAX / XHR缓存zip文件(和其他文件)?

AJAX不会将值传递给PHP

如何使用ajax在其他.php文件上传递此变量

使用 AJAX 和 PHP 上传图像和其他信息 - 无法识别文件名

Ajax将值传递给其他php文件,并在if语句中使用该值

使用Ajax和其他类型的输入发送文件

使用AJAX从其他远程服务器获取文件?

ASP.NET(VB) 列表框不会将所有选定的项目移动到其他列表框

Ajax不会将表单数据发送到我的PHP文件来发送邮件

使用AJAX打开php文件