php如何实现表单上传文件

零到壹度
发布: 2018-03-27 09:48:15
原创
2465人浏览过

使用表单上传文件的时候,表单的提交方式必须是post提交方式,上传文件的input控件type属性值应为file,最重要的是form标签需要加一个enctype="multipart/form-data"的属性。

html代码:

 [html] view plain copy
<!DOCTYPE html>  
<html lang="en">  
<head>  
    <meta charset="UTF-8">  
    <title>上传</title>  
</head>  
<body>  
    <form action="handle.php" method="post" enctype="multipart/form-data">  
        <input type="file" name="file1">  
        <br/>  
        <input type="submit" value="上传">  
    </form>  
</body>  
</html>
登录后复制

php代码:

[php] view plain copy[php] view plain copy
<?php  
    /* 
     *用$_FILES接收通过表单上传的文件数据  
     *$_FILES['file1']中的file1对应表单中上传文件的input标签中的name值 
     *$_FILES['file1']返回的是一个数组: 
     $_FILES['file1']['name'] 显示上传文件的原名称。 
     $_FILES['file1']['type'] 文件的 MIME 类型,例如"image/gif"、"image/png"。 
     $_FILES['file1']['size'] 已上传文件的大小,单位为字节。 
     $_FILES['file1']['tmp_name'] 储存的临时文件名和临时储存的路径。 
     $_FILES['file1']['error'] 和该文件上传相关的错误代码。 
     =0; 没有错误发生,文件上传成功。  
     =1; 上传的文件超过了 php.ini 中 upload_max_filesize 选项限制的值。  
     =2; 上传文件的大小超过了 HTML 表单中 MAX_FILE_SIZE 选项指定的值。  
     =3; 文件只有部分被上传。  
     =4; 没有文件被上传。  
     =5; 上传文件大小为0.  
     */  
    $file=$_FILES['file1'];  
  
    //给文件重命名,尽量不要起中文名字,如下以时间戳+随机数重命名  
    $filename=time().rand(0,1000);  
  
    //获取文件的后缀,pathinfo()会以数组的形式返回一个文件的路径信息,其中extension元素则是文件的后缀名  
    $ext=pathinfo($_FILES['file1']['name'])['extension'];  
  
    //最终文件名为  
    $filename=$filename.'.'.$ext;  
  
    //设置文件上传到服务器后存放的位置,move_uploaded_file()会将文件移动到新位置,第一个参数是要移动的文件,第二个参数是移动到哪里。我在这里是放到和本php文件同一目录下,注意需要将新的文件名连接进去。  
    if (move_uploaded_file($file['tmp_name'], './'.$filename)) {  
        echo "success";  
     } else{  
        echo "error";  
     }    
 ?>
登录后复制

相关推荐:


文件各种上传,离不开的表单


表单上传文件


form表单上传文件


以上就是php如何实现表单上传文件的详细内容,更多请关注php中文网其它相关文章!

PHP速学教程(入门到精通)
PHP速学教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号