猿问

move_uploaded_file()移动文件失败

题目描述

图片上传给php的时候,file文件没有错误,但move_uploaded_file()在控制台打印为空

问题出现的环境背景及自己尝试过哪些方法

我打印了$_FILES'file',显示为0,说明文件上传没有错误,而移动有错误

相关代码

// 请把代码文本粘贴到下方(请勿用图片代替代码)
<?php

$typeArr = array("jpg", "png", "gif","jpeg");//允许上传文件格式 
$path = "uploadImg/";//上传路径 
echo exec('whoami');
if (isset($_POST)) { 
    $name = $_FILES['file']['name']; 
    $size = $_FILES['file']['size']; 
    $name_tmp = $_FILES['file']['tmp_name']; 
    if (empty($name)) { 
        echo json_encode(array("error"=>"1:您还未选择图片")); 
        exit; 
    } 
    $type = strtolower(substr(strrchr($name, '.'), 1)); //获取文件类型 
    
    if (!in_array($type, $typeArr)) { 
        echo json_encode(array("error"=>"2:请上传jpg,png,jpeg或gif类型的图片!")); 
        exit; 
    } 
    if ($size > (500 * 1024)) { 
        echo json_encode(array("error"=>"3:图片大小已超过500KB!")); 
        exit; 
    } 
    
    $pic_name = time() . rand(10000, 99999) . "." . $type;//图片名称 
    $pic_url = $path . $pic_name;//上传后图片路径+名称 
    echo("<script>console.log( error : " . $_FILES['file']['error'] . ");</script>");
    echo("<script>console.log( name_tmp : " . $name_tmp . ");</script>");
    echo("<script>console.log( pic_name : " . $pic_name . ");</script>");
    echo("<script>console.log( pic_url : " . $pic_url . ");</script>");
    echo("<script>console.log(" . move_uploaded_file($name_tmp, $pic_url) . ");</script>");
    move_uploaded_file($name_tmp, $pic_url);
    if (move_uploaded_file($name_tmp, $pic_url)) { //临时文件转移到目标文件夹 
        echo json_encode(array("error"=>"0","pic"=>$pic_url,"name"=>$pic_name)); 
    } else { 
        echo json_encode(array("error"=>"上传有误,请检查服务器配置!"));
    } 
}

?>

你期待的结果是什么?实际看到的错误信息又是什么?

期望图片能够下载到uploadImg文件夹里面,但没有任何报错信息.只显示了
apache
<script>console.log( error : 0);</script>
<script>console.log( name_tmp : /tmp/phpwMglOP);</script>
<script>console.log( pic_name : 155114603817409.jpg);</script><script>console.log( pic_url : uploadImg/155114603817409.jpg);
</script><script>console.log();</script>
和"上传有误,请检查服务器配置!"

互换的青春
浏览 621回答 3
3回答

慕慕森

调用2次是什么鬼???

慕勒3428872

上面哪行 的move_uploaded_file 代码去掉 ,试试
随时随地看视频慕课网APP
我要回答