加入收藏 | 设为首页 | 会员中心 | 我要投稿 南平站长网 (https://www.0599zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php用rename函数移动文件报warning

发布时间:2022-12-03 12:30:36 所属栏目:PHP教程 来源:未知
导读: 问题遇到的现象和发生背景
有一个表单,用form元素提交的,表单内有input file元素,因为想要刷新页面后仍保存file的值,
于是每次用户选择图片后,都会发起一个$.ajax请求,把图片存到服务

问题遇到的现象和发生背景

有一个表单,用form元素提交的,表单内有input file元素,因为想要刷新页面后仍保存file的值,

于是每次用户选择图片后,都会发起一个$.ajax请求,把图片存到服务器缓存(我能想到的是存$_Session)里,然后正式提交的时候再把图片从$_Session中取出来移动到存图片的文件夹里PHP函数,但是移动文件我用move_uploaded_file函数不行,用rename函数也不行,请问怎么实现文件移动

用代码块功能插入代码,请勿粘贴截图

var formData = new FormData();
                        var name = $("input").val();
                    formData.append("file", file); //file文件对象
                    formData.append("type", fileId);
                    $.ajax({
                        type: 'POST',
                        url: 'uploadCache.php',
                        data: formData,
                        processData: false, // 告诉jquery要传输data对象
                        contentType: false,   // 告诉jquery不需要增加请求头对于contentType的设置

php explode函数_php的substr函数_PHP函数

success: function (arg) { console.log(arg) }, error: function () { alert('上传错误') } })

//uploadCache.php
session_start();
$type = $_POST['type'];
$_SESSION[$type] = $_FILES['file'];

//表单提交php
    if($driveLisenceUrl != '' && $_SESSION['drive_lisence']){
        $fileName = $user . '-' . date("Y.m.d") . md5(uniqid(microtime(true),true)) . "." . substr($_SESSION['drive_lisence']["name"], strrpos($_SESSION['drive_lisence']["name"], '.')+1);
        $a = rename($_SESSION['drive_lisence']["tmp_name"],"../uploadDriveLisence/" . $fileName);
    }

运行结果及报错内容

Warning: rename(C:\Windows\Temp\php230C.tmp,../uploadDriveLisence/1801010011)

我的解答思路和尝试过的方法

移动文件我用move_uploaded_file函数不行,用rename函数(报warning)也不行

我想要达到的结果

实现文件从$_Session移动到目的文件夹

(编辑:南平站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!