PHP中表单上传实例解析

小云云
发布: 2018-03-31 09:29:34
原创
2085人浏览过


本文主要和大家分享PHP中表单上传实例解析,主要以文字和代码的方式和大家分享,希望能帮助到大家。
表单上传:数据从浏览器端到服务器端。(在浏览器向服务器发送请求时传送。)

            表单中的数据分为两种:1.字符串类型(字节流编码,即有一定的编码规则)

                                                  2.文件类型(二进制编码,即仅进行二进制传输,不遵循编码规则)

<form action='' method='' enctype=''>
        <input type='' name='' value=''>
</form>
登录后复制

        form标签中:

                属性action定义了提交表单的动作,即表指定服务器脚本处理上传的表单。如果action属性省略,则表示当前脚本处理;

                method属性规定提交表单时所用的http方法,默认为GET,可选POST和GET两种。(使用GET时表单数据在地址栏可见,POST不可见);

                enctype属性规定在发送到服务器之前应该如何对表单数据进行编码,属性值有application/x-www-form-urlencode(此为默认选项,表示对所有字符串都进行编码)、multipart/form-data(不对其进行编码,文件上传时必须使用该值)、text/plain(空格转换为+,但不对特殊字符进行编码)

        input标签中:

                type属性可有text(文本输入)、radio(单选按钮)、checkbox(多选)、submit(表单提交)、password(密码:使用加密形式)、file(文件上传)。

                name属性是必须的,在提交表单后,各个控件的值被存入$_GET或$_POST数组中,而name作为对应值的数组下标。

立即学习PHP免费学习笔记(深入)”;

                  value属性表示的是该空间的值,若有外部输入,则存储外部输入的值,相当于一个默认值。该属性不是必须的。

数据接收

        服务器在接收浏览器传过来的数据后,会按照数据类型的不同,采用不同的处理方式:

                1.字符串类型数据存储于$_GET/$_POST变量中。

                2.文件数据,存储到临时目录中(在一个脚本周期类保存,过时会自动删除)

<!DOCTYPE HTML>
<html>
	<head>
		<meta http-equiv='Content-Type' content="text/html;charset=utf8"/>
	</head>
	<body>
		<form action='test.php' method='POST' enctype='multipart/form-data'>
			用户名:<input type='text' name='username' ></br>
			密码:<input type='password' name='password'></br>
			文件上传:<input type='file' name='filename'></br>
			上传:<input type='submit' name='submit' value='submit'>
		</form>
	</body>
</html>
登录后复制


密码由于是type='password'属性,在此不显示。

上传成功后,在服务器后台指定的脚本下var_dump($_POST)得到如下结果:


结果中只有填写字符串型数据,且索引值为表单名,而文件数据并不存在(存储于系统的临时文件temp中,并且存在时间为脚本周期)。

在php.ini中可以配置上传文件的临时目录(默认关闭状态),如果未手动更改,则使用服务器系统默认的临时文件目录temp。

数据处理

主要是对上传文件进行存储(临时文件在脚本结束后自动删除)。

使用函数:move_uploaded_file(临时存储地址,目标地址);

                $_FILES数组 中存储了上传的文件的信息。

                    

    'filename'下标是在表单中所写的name属性的。

    二维数组中的name表示原始文件名、type表示文件类型(并非后缀)、tmp_name表示临时存储地址、error表示是否出错以及错误类型、size表示上传文件的大小。

                函数:strrchr(字符串,字符);获得字符最后一次出现的位置,并将该字符及后面的所有字符输出。

                            strchr(字符串,字符);获得字符第一次出现的位置。。。。。。。。。。。。。。。

                            pathinfo(变量);获取变量的地址、类型,名字。。。

                            uniqID();给上传文件命名(避免重复)。uniqID(‘li_’),表示在一串生成的字符串前加上li_前缀。

相关推荐:

php处理表单上传文件的方法

以上就是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号