经验总结:示例PHP上传文件代码
今天看了一本关于PHP的书,让我了解了PHP上传文件的方法,最主要的两个函数是move_uploade_file(临时文件,目标位置和文件名)和is_uploaded_file(),前者用来移动上传后保存在服务器缓存区的文件到目标文件,后者用来判断文件是否上传成功。除了以上两个函数之外,还要说明一下form标签中enctype的值应该如下:
- <formenctypeformenctype=multipart/form-datamethod=postname=upform>
只有其值为multipart/form-data才能保证以正确的编码方式上传文件。input标签type属性中的file
- <inputnameinputname=upfiletype=file>
PHP上传文件代码类saveupload.php
- <?php
- if(is_uploaded_file($_FILES[upfile][tmp_name])){
- $upfile=$_FILES[upfile];//如果已经选定了要上传的文件,将其索引保存在$upfile中
- //分别去上传文件的名字,类型等
- $name=$upfile[name];
- $type=$upfile[type];
- $size=$upfile[size];
- $tmp_name=$upfile[tmp_name];
- $error=$upfile[error];
- //设定上传文件类型
- switch($type){
- caseimage/pjpeg:
- $ok=1;
- break;
- caseimage/jpeg:
- $ok=1;
- break;
- caseimage/png:
- $ok=1;
- break;
- caseimage/gif:
- $ok=1;
- break;
- }
- //如果文件类型合法并且$error返回值为0,说明上传成功
- if($ok&&$error==0){
- move_uploaded_file($tmp_name,up/.$name);//将保存在缓存的文件移动到指定目录下
- echo上传成功;
- }
- }
- ?>
PHP上传文件代码上传页面upload.php
- <!DOCTYPEhtmlPUBLIC-//W3C//DTDXHTML1.0Transitional//ENhttp://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd>
- <htmlxmlnshtmlxmlns=http://www.w3.org/1999/xhtml>
- <head>
- <metahttp-equivmetahttp-equiv=Content-Typecontent=text/html;charset=utf-8/>
- <title>upload</title>
- <styletypestyletype=text/css>
- <!--
- body{
- background-color:#CFF;
- text-align:center;
- }
- -->
- </style></head>
- <body>
- 文件上传
- <hr/>
- <formidformid=form1name=form1method=postaction=saveupload.phpenctype=multipart/form-data>
- 上传文件:
- <label>
- <inputtypeinputtype=filename=upfile/>
- </label>
- <label>
- <inputtypeinputtype=submitname=buttonid=buttonvalue=上传/>
- </label>
- </form>
- </body>
本文地址:http://www.phprm.com/frame/php1003413.html
转载随意,但请附上文章地址:-)
- 上一篇: 实战PHP上传文件代码演示
- 下一篇: 揭秘PHP上传图片代码详细分析