用php上传文件

用php上传文件,php,file,file-upload,Php,File,File Upload,大家好,我正在用php上传文件 一切正常,但move_uploded_文件不起作用 显示的每个变量记录和文件的所有权限都已设置 function uploadfile($filename) { $filetype=$filename["type"]; $filename=$filename['name']; $filetempname=$filename['tmp_name']; if($filetype=="application/msword")

大家好,我正在用php上传文件 一切正常,但move_uploded_文件不起作用 显示的每个变量记录和文件的所有权限都已设置

function uploadfile($filename)
{



    $filetype=$filename["type"];
    $filename=$filename['name']; 
    $filetempname=$filename['tmp_name'];
    if($filetype=="application/msword")
    {
        move_uploaded_file($filetempname,"resume/".$filename);

    }

}
这一行行不通,因为几乎可以保证浏览器不会尝试检测文件mime类型。取出
if
语句,它应该会工作


您仍然应该尝试以不同的方式验证该文件(并绝对确保它不是PHP,因为这将是一个巨大的安全漏洞)。
$filename
数组在这一行变成一个字符串:
$filename=$filename['name']

我想知道你为什么没有收到错误消息


尝试使用另一个var名称而不是$filename作为函数参数,我相信它会起作用

尝试将display\u errors=on设置为on,然后您将收到错误消息;-)或者在else语句中输出一些消息,以查看if条件是否不匹配。

首先设置错误报告,在脚本的顶部放置以下内容:

ini_set('display_errors', true);
error_reporting(E_ALL);
然后确保文件类型确实是
application/msword

echo $filetype;
并确保路径正确:

echo "resume/".$filename;
还要确保:

  • 目录具有写入权限
  • 您正在指定正确的路径
  • 尝试您的路径,如
    “/resume/”$filename
  • 尝试使用
    $\u SERVER['DOCUMENT\u ROOT']作为路径的前缀。

上传时必须检查的第一个元素是$filename[“错误”]

请解释发生了什么,出现了什么错误消息,以及
$filetempname
包含了什么。只是一个猜测:文件夹
resume
存在是吗?但是您指定了一个相对路径,那么执行脚本的文件夹是否存在?那么您需要提供大约5000倍的详细信息。打开错误报告?+1个漂亮的捕捉。从技术上讲,这是一个警告,他/她已经关掉了。可能
echo "resume/".$filename;