如何使用PHP上传文件,上传图片,php上传教程,php表单文件上传教程
使用PHP进行文件上传,主要使用到表单功能和PHP内置的$_FILES函数功能。接下来我们看如何实现PHP上传功能。例子效果图,此例子是在Mac下进行调试成功的。

PHP上传图片文件的功能代码如下:
<html>
<head>
<meta charset="utf-8">
<title>Upload File Example</title>
<style>
body{
width:500px;
margin:20px auto;
line-height:25px;
}
img{
display:block;
max-width:500px;
}
h1{
text-align:center;
}
#uploadfile{
background-color:#eee;
text-align:center;
width:500px;
margin:0 auto;
}
form{
margin:0px;
padding:0px;
}
#uploadfile .input1{
display:block;
width:500px;
text-align:center;
margin:0 auto;
}
#uploadfile .input2,.input3{
width:100px;
margin:5px 20px;
}
</style>
</head>
<body>
<h1>Upload File</h1>
<div id="uploadfile">
<form enctype="multipart/form-data" action="<?php echo $_SERVER['PHP_SELF'];?>" method="post">
<input class="input1" name="upfile" type="file">
<input class="input2" type="submit" value="确认提交">
<input class="input3" type="reset" value="重置">
</form>
</div>
<?php
if($_FILES["upfile"]["name"]==NULL){
echo "No file choice!";
}else{
$filepath="/Library/WebServer/Documents/";
$tmp_name=$_FILES["upfile"]["tmp_name"];
$filename=$filepath.$_FILES["upfile"]["name"];
echo "<br>"."\$_FILES['upfile']['name']:".$_FILES["upfile"]["name"];
echo "<br>"."\$_FILES['upfile']['size']:".GetSize($_FILES["upfile"]["size"]);
echo "<br>"."\$_FILES['upfile']['type']:".$_FILES["upfile"]["type"];
echo "<br>"."\$_FILES['upfile']['tmp_name']:".$_FILES["upfile"]["tmp_name"];
if(move_uploaded_file($tmp_name,$filename)){
echo "<br>"."已上传至目录:".$filename;
if(in_array($_FILES["upfile"]["type"],array("image/png","image/jpg","image/bmp"))){
echo "<br>"."<img src='/".$_FILES["upfile"]["name"]."' />";
}else{ }
}else{
echo "<br>"."Upload faild!";
}
}
// 将文件大小转成相应计量单位
function GetSize($tmp){
$arr = array("B","KB","MB","GB","TB","PB");
$pos = 0;
if(!is_integer($tmp))
return -1;
while($tmp>1024 and count($arr)>$pos){
$tmp = $tmp / 1024.0;
$pos++;
}
$tmp = sprintf("%.2f",$tmp);
return $tmp.$arr[$pos];
}
?>
</body>
</html>
使用表单的action可以选点表单提交对象,象本文中的例子是将表单提交给自己进行处理。
method可以选择post或get文件进行提交。
如何使用PHP上传文件,上传图片,php上传教程,php表单文件上传教程的更多相关文章
- Flask教程 —— Web表单(上)
第二章中介绍的request对象公开了所有客户端发送的请求信息.特别是request.form可以访问POST请求提交的表单数据. 尽管Flask的request对象提供的支持足以处理web表单,但依 ...
- CURL模拟表单post提交及相关常用参数的使用(包括提交表单同时上传文件)
转载自:https://blog.csdn.net/freedomwjx/article/details/43278157 (注:在curl前面加上time如time curl xxx,可以在最后显示 ...
- 混合表单文件上传到数据库(基于TOMCAT)
在实际的开发中在实现文件上传的同时肯定还有其他信息需要保存到数据库,就像混合表单在上传完毕之后需要将提交的基本信息插入数据库. 在这个demo中需要用到这个架包来帮助实现 1.定义一个公共类实现文件上 ...
- 表单文件上传,ajax文件上传
原创链接:http://www.cnblogs.com/yanqin/p/5345562.html html代码 index.jsp(表单文件上传) <form action="sh ...
- Java模拟表单POST上传文件
JAVA模拟表单POST上传文件 import java.awt.image.BufferedImage;import java.awt.image.ColorModel;import java.io ...
- Ajax(form表单文件上传、请求头之contentType、Ajax传递json数据、Ajax文件上传)
form表单文件上传 上菜 file_put.html <form action="" method="post" enctype="multi ...
- Django---CBV和FBV的使用,CBV的流程,给视图加装饰器,Request对象方法,属性和Response对象,form表单的上传
Django---CBV和FBV的使用,CBV的流程,给视图加装饰器,Request请求对象方法,属性和Response响应对象,form表单的上传 一丶CBV和FBV 在Django中存 ...
- 关于echarts的使用----模块化单文件引入(推荐) 与标签式单文件引入
官网:http://echarts.baidu.com/echarts2/doc/doc.html#引入ECharts3 关于模块化单文件引入(推荐) 与标签式单文件引入
- JAVA入门[16]-form表单,上传文件
一.如何传递参数 使用 @RequestParam 可以传递查询参数.例如:http://localhost:8092/category/detail?id=1 @RequestMapping(&qu ...
随机推荐
- ajax内调用WCF服务
WCF可以当作WebService一样被调用,在html内通过ajax调用WCF服务的方法如下: 1.新建一个WCF服务的网站项目: 2.在项目内增加一个新项:启用了ajax的WCF服务: 3.在对应 ...
- oracle触发器和存储过程的格式
最近接到一个任务要根据一个表来转移另一个表的数据到第三个表.想了想,用决定用触发器+存储过程的方式来做.有些时间没有写存储过程和触发器了,查了一下资料,确定了oracle的触发器和存储过程的格式. 触 ...
- Daily Scrum02 12.13
之前由于编译的第二次审查,大家又紧张地忙了一阵,调Bug的调Bug,换文法的换文法,双十二的会议也停了一次,给大家完成数据库大作业留一个缓冲的时间.但是我们的进度还要继续抓紧啊!! Member 任务 ...
- mysql 怎么通过sql语句批量去掉某一个表中某一个字段的多余字符
采用替换,把”<img src="“替换为空格," width="300" height="300" />也替换为空格,曾经在网 ...
- Node.js 框架
Node.js的是一个JavaScript平台,它允许你建立大型的Web应用程序. Node.js的框架平台使用JavaScript作为它的脚本语言来构建可伸缩的应用. 当涉及到Web应用程序的开发 ...
- 结合数据库登录注册模块,登录成功之后跳到WebView
最近刚刚做了一个模块,在本地建立一个数据库,存储注册的账号,登录的时候取出,正确则登录,登录之后跳到一个webView网页. 直接上代码吧. LoginActivity.java package co ...
- HDFS 异常处理与恢复
在前面的文章 <HDFS DataNode 设计实现解析>中我们对文件操作进行了描述,但并未展开讲述其中涉及的异常错误处理与恢复机制.本文将深入探讨 HDFS 文件操作涉及的错误处理与恢复 ...
- 那点你不知道的XHtml(Xml+Html)语法知识(DTD、XSD)
什么是XHtml: 摘录网上的一句话,XHTML就是一个扮演着类似HTML的角色的XML. XHtml可当模板引擎应用: CYQ.Data 框架里有一套XHtmlAction模板引擎, 应用在QBlo ...
- .Net开发笔记(十七) 应用程序扩展
在很多场合,我们需要在已有软件程序上增加一些新的功能,几乎所有原因是因为原有软件功能不能满足我们的需要,我们平时做的插件就属于这种情况,最常见的是VS IDE的插件开发,网上老外写的一篇关于插件开发的 ...
- 利用gulp解决前后端分离的header/footer引入问题
在我们进行前后端完全分离的时候,有一个问题一直是挺头疼的,那就是公共header和footer的引入.在传统利用后端渲染的情况下,我们可以把header.footer写成两个单独的模板,然后用后端语言 ...