PHP安全上传图片的方法
本文实例讲述了PHP安全上传图片的方法。分享给大家供大家参考。具体分析如下:
这段代码用于上传图片,可以根据图片类型检测图片是否安全,不是简单的检测扩展名
<?php // upload.php echo <<<_END <html><head><title>PHP Form Upload</title></head><body> <form method='post' action='upload2.php' enctype='multipart/form-data'> Select a JPG, GIF, PNG or TIF File: <input type='file' name='filename' size='10' /> <input type='submit' value='Upload' /></form> _END; if ($_FILES) { $name = $_FILES['filename']['name']; switch($_FILES['filename']['type']) { case 'image/jpeg': $ext = 'jpg'; break; case 'image/gif': $ext = 'gif'; break; case 'image/png': $ext = 'png'; break; case 'image/tiff': $ext = 'tif'; break; default: $ext = ''; break; } if ($ext) { $n = "image.$ext"; move_uploaded_file($_FILES['filename']['tmp_name'], $n); echo "Uploaded image '$name' as '$n':<br />"; echo "<img src='$n' />"; } else echo "'$name' is not an accepted image file"; } else echo "No image has been uploaded"; echo "</body></html>"; ?>
希望本文所述对大家的php程序设计有所帮助。
相关推荐
-
php上传图片到指定位置路径保存到数据库的具体实现
1.conn.php 复制代码 代码如下: <? $host="localhost"; //数据库服务器名称 $user="root"; //用户名 $pwd="1721"; //密码 $conn=mysql_connect($host,$user,$pwd); mysql_query("SET character_set_connection=gb2312, character_set_results=gb2312, chara
-
php+js iframe实现上传头像界面无跳转
上传头像,界面无跳转的方式很多,我用的是加个iframe那种.下面直接上代码. html: 复制代码 代码如下: //route 为后端接口 //upload/avatar 为上传的头像的保存地址 //imgurl=/upload/avatar/<?=$uid?> 这里最后的<?=$uid?>是为了后面用js实现即时显示最新的更换后的头像用的,参照下面的js部分的代码 //头像保存名称为uid.type,如1.jpg,2.png等 //$user['avatar'] 用户如果上传过
-
php修改上传图片尺寸的方法
本文实例讲述了php修改上传图片尺寸的方法.分享给大家供大家参考.具体实现方法如下: <?php // This is the temporary file created by PHP $uploadedfile = $_FILES['uploadfile']['tmp_name']; // Create an Image from it so we can do the resize $src = imagecreatefromjpeg($uploadedfile); // Capture
-
PHP+Javascript实现在线拍照功能实例
本文实例讲述了PHP+Javascript实现在线拍照功能.分享给大家供大家参考.具体如下: 我们在一些WEB应用中可能会遇到这样的情况,用户需要自己现场拍照并上传到会员系统.比如驾校采集指纹拍照流程.考试现场采集照片等.我们今天要讲的是如何使用javascript和PHP实现一个简单的在线拍照并上传的功能. 实现这个功能的前提是你的电脑设备上需要安装有摄像头设备,以及你的浏览器需要支持flash <!DOCTYPE HTML> <html> <head> <me
-
PHP上传图片进行等比缩放可增加水印功能
啥也不说,直接上代码,大家可以自行添加增加水印功能: 复制代码 代码如下: <?php /** * * @author zhao jinhan * @date 2014年1月13日11:54:30 * @email xb_zjh@126.com * */ header('Content-type:text/html; charset=utf-8'); //定义缩略图的宽高 define('THUMB_WIDTH',300); define('THUMB_HEIGHT',300); /** * 重
-
php实现按指定大小等比缩放生成上传图片缩略图的方法
本文实例讲述了php实现按指定大小等比缩放生成上传图片缩略图的方法.分享给大家供大家参考.具体实现方法如下: 复制代码 代码如下: /** * * *等比缩放 * @param unknown_type $srcImage 源图片路径 * @param unknown_type $toFile 目标图片路径 * @param unknown_type $maxWidth 最大宽 * @param unknown_type $maxHeight 最大高 * @par
-
PHP批量上传图片的具体实现方法介绍.
大家可以通过下面这一段代码,来具体了解PHP批量上传图片的具体方式.我们在学习PHP的时候,肯定是要从实际操作中慢慢积累经验,以巩固我们所学到的知识,逐渐的加强我们的编程水平. •PHP保护文件系统的具体代码分享•PHP保护数据库的具体代码示例•探讨主要的PHP应用领域•基于PHP的AJAX技术的具体应用解析•PHP限制上传文件大小的具体解决办法PHP批量上传图片的代码如下: 复制代码 代码如下: <html> <head><title>uploadpicturemor
-
php实现上传图片保存到数据库的方法
php实现上传图片保存到数据库的方法.分享给大家供大家参考.具体分析如下: php 上传图片,一般都使用move_uploaded_file方法保存在服务器上.但如果一个网站有多台服务器,就需要把图片发布到所有的服务器上才能正常使用(使用图片服务器的除外) 如果把图片数据保存到数据库中,多台服务器间可以实现文件共享,节省空间. 首先图片文件是二进制数据,所以需要把二进制数据保存在mysql数据库. mysql数据库提供了BLOB类型用于存储大量数据,BLOB是一个二进制对象,能容纳不同大小的数据
-
php上传图片存入数据库示例分享
大部分人的图片上传都是保存一个路径到数据库,这样在插入时确实快,也符合web的特点,但是在删除时就很麻烦,需要找到文件并删除,该代码能够把代码直接存入数据库,删除时一并删除.请注意:这样的话数据库大小会激增,请酌情使用 表结构 复制代码 代码如下: CREATE TABLE `upload` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT, `type` varchar(20) NOT NULL, `data` mediumblob NOT
-
php上传图片之时间戳命名(保存路径)
html代码: <div id="images" style="width:250px;height:120px;background:#fff;border:1px solid #ccc;"> <h2><strong>图片导入</strong></h2> <form enctype="multipart/form-data" action="./includer/imp
-
android上传图片到PHP的过程详解
今天在做上传头像的时候,总是提交连接超时错误,报错信息如下:XXXXXXSokcetTimeOutXXXXXXXX 然后自己设置HTTP的超时时间: 复制代码 代码如下: [java] view plaincopyprint? //设置超时时间 httpclient.setTimeout(20000); 再building,runing,还是不行....这就怪了,明明好好的,怎么会突然就变成连接超时了呢!又折腾了一阵子后,也跟后台那边的朋友沟通过,他也测试了上传接口,发现没什么问题,就让我自己
-
6种php上传图片重命名的方法实例
一.适用场景:无法使用从数据库中返回的自增长数字,给上传图片重命名.这是图片或文件上传的流程决定的.一般图片上传处理过程是,先上传图片到服务器,重命名之后,插入到数据库.也就是说,在数据库中非常容易获得的自增长id,无法用于给上传的图片重命名,来避免文件名称的重复,而采用从数据库中获取最大id加1的方式,增加了数据库连接的次数,不适用于高并发和数据量巨大的情况:二.常规方案:1,guid:32 字符十六进制数.格式:GUID 的格式为"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxx
-
php视频拍照上传头像功能实现代码分享
如果要在php中实现视频拍照我们需要借助于flash插件了,由flash拍出的确照片我们再通过php的$GLOBALS ['HTTP_RAW_POST_DATA']接受数据,然后保存成图片就可以了,下面我来介绍一下. 使用的是$GLOBALS ['HTTP_RAW_POST_DATA'],这个系统函数跟post很相似,但是$GLOBALS ['HTTP_RAW_POST_DATA']支持的数据格式更丰富些. 设计流程: $GLOBALS ['HTTP_RAW_POST_DATA']传递照片数据流
-
基于jQuery+PHP+Mysql实现在线拍照和在线浏览照片
本文用示例讲述了如何使用jQuery与PHP及Mysql结合,实现WEB版在线拍照.上传.显示浏览的功能,ajax交互技术贯穿本文始末,所以本文的读者要求具备相当熟悉jQuery及其插件使用和javscript相关知识,具备PHP和Mysql相关知识. 点击此处下载源码 HTML 首先,我们要建立一个主页面index.html来展示最新上传的照片,我们使用jQuery来获取最新的照片,所以这是一个HTML页面,不需要PHP标签,当然还要建立一个包括用来拍照和上传交互所需的HTML结构.
-
php实现上传图片文件代码
代码很简单,这里我们就不多废话了,直接奉上源码 <?php // 注册表单的姓名 $name=""; $nameErr=""; if ($_SERVER["REQUEST_METHOD"]=="POST") { if (empty($_POST['name'])) { }else{ $name=$_POST['name']; if (!preg_match("/^[a-zA-Z]*$/", $name
随机推荐
- php UEditor百度编辑器安装与使用方法分享
- 锁定行头和列头的表格组件
- AngularJS 双向数据绑定详解简单实例
- AngularJS入门教程之控制器详解
- 英语常用口语扫盲啦.扫盲!
- ASP.NET MVC分页控件
- asp.net实现调用存储过程并带返回值的方法
- php截取指定2个字符之间字符串的方法
- Codeigniter实现智能裁剪图片的方法
- php连接与操作PostgreSQL数据库的方法
- JSP中文乱码常见3个例子及其解决方法
- 浅谈C++中的string 类型占几个字节
- mysql数据库sql优化原则(经验总结)
- 用js判断用户浏览器是否是XP SP2的IE6
- destoon数据库表说明汇总
- 从一个不错的留言本弄的mysql数据库操作类
- vue-resource + json-server模拟数据的方法
- jquery批量控制form禁用的代码
- mysql中获取一天、一周、一月时间数据的各种sql语句写法
- 非常酷的有农历的日历挂历!