PHP——文件上传

创建文件上传表单

<html>
<body>
<form action="upload_file.php" method="post"
enctype="multipart/form-data">

<label for="file">Filename:</label>
<input type="file" name="file" id="file"/>
<br/>
<input type="submit" name="submit" value="submit"/>
</form>
</body>
</html>

  • enctype表明上传文件使用哪种类型文件
  • “multipart/form-date”表明需要二进制数据文件(文件类容)

创建上传脚本

<?php


if ($_FILES["file"]["error"]>0)

{

    echo "Error:".$_FILES["file"]["error"]."<br/>";
}

else
{
    echo "Upload:".$_FILES["file"]["name"]."<br/>";
    echo "Type:".$_FILES["file"]["type"]."<br/>";
    echo "Size".($_FILES["file"]["size"]/1024)."Kb<br/>";
    echo "sored in:".$_FILES["file"]["tmp_name"];
}
?>

$_FILES数组

  • 第一个参数,是表单的input name ;第二个参数可以是name,type,size,tmp_name,error
    -$_FILES["file"]["name"]:被上传文件的名称
    -$_FILES["file"]["type"]:被上传文件的类型
    -$_FILES["file"]["size"]:被上传文件的大小,以字节计
    -$_FILES["file"]["tmp_name"]:存储在服务器的文件的临时副本的名称
    -$_FILES["file"]["error"]:由文件上传导致的错误代码

上传限制

<?php
if ((($_FILES["file"]["type"]=="image/gif")||($_FILES["file"]["type"]=="image/jpeg")||($_FILES["file"]["type"]=="image/pjep")&&($_FILES["file"]["size"]<20000)))
{
    if($_FILES["file"]["error"]>0)
    {
        echo "Error:".$_FILES["file"]["error"]."<br/>";
    }
    else
    {
        echo "Upload:".$_FILES["file"]["name"]."<br/>";
        echo "Type:".$_FILES["file"]["type"]."<br/>";   
        echo "Size:".$_FILES["file"]["size"]."<br/>";
        echo "Temp file:".$_FILES["file"]["tmp_name"]."<br/>";
    }
}
else 
    {
        echo "Invalid file";
    }
?>

  • IEl浏览器识别jpg文件的类型为:pjpep
  • FireFox浏览器识别jpg文件的类型为:jpeg

保存被上传的文件

<?php

if ((($_FILES["file"]["type"]=="image/gif")||($_FILES["file"]["type"]=="image/jpeg")||($_FILES["file"]["type"]=="image/pjep")&&($_FILES["file"]["size"]<20000)))

{
    if($_FILES["file"]["error"]>0)
    {
        echo "Error:".$_FILES["file"]["error"]."<br/>";
    }
    else
    {
        echo "Upload:".$_FILES["file"]["name"]."<br/>";
        echo "Type:".$_FILES["file"]["type"]."<br/>";   
        echo "Size:".$_FILES["file"]["size"]."<br/>";
        echo "Temp file:".$_FILES["file"]["tmp_name"]."<br/>";
        if (file_exists("upload/".$_FILES["file"]["name"]))
        {
            echo $_FILES["file"]["name"]."already existe";
        }
        else
        {
            move_uploaded_file($_FILES["file"]["tmp_name"],
            "upload/".$_FILES["file"]["name"]);
            echo "stored in:"."upload/".$_FILES["file"]["name"];
        }
    }
}
else 
    {
        echo "Invalid file";
    }
?>

posted @ 2021-02-17 22:20  ceiling~  阅读(59)  评论(0编辑  收藏  举报