上传图片并生成相关缩略图-PHP
if(!empty($_FILES["fileField"]["name"])){//检测表单传递文件数据
$fileinfo = $_FILES["fileField"];
if($fileinfo['size'] < 10000000 && $fileinfo['size'] > 0){//大小筛选
if($fileinfo['type'] == 'image/jpeg'||'image/jpg'||'image/png'||'image/gif' ){//类型筛选
if(!file_exists("./uploadimages")){
mkdir("./uploadimages");
}
move_uploaded_file($fileinfo['tmp_name'],"uploadimages/".$fileinfo['name']) or die("文件上传失败");
$path=(string)$fileinfo['name'];
$sql="insert into banner values(' ','$path','$alt','$riqi',' ','$url')";
$insert_id=mysql_query($sql);
if($insert_id){
makezoom("uploadimages/".$fileinfo['name'],200,100,'uploadimages/200_100/');
makezoom("uploadimages/".$fileinfo['name'],1920,900,'uploadimages/1920_900/');
echo "<script>alert('添加成功');</script>";
echo "<script language=\"javascript\">setTimeout('window.history.back(-1)',0);</script>";
}else{
$error=mysql_error();
echo $error;
//echo "<script>alert('添加失败'.$error);</script>";
echo "<script language=\"javascript\">setTimeout('window.history.back(-1)',3000);</script>";
}
}else{echo "(请上传正确格式的图片,jpg,png,gif)";
echo "<script language=\"javascript\">setTimeout('window.history.back(-1)',3000);</script>";}
}else{
echo ("图片过大或者未知...");
echo "<script language=\"javascript\">setTimeout('window.history.back(-1)',3000);</script>";
}
}
function makezoom($src='moban.com/images/bg1.jpg',$width=200,$height=200,$dir = 'uploadimages/200_200/',$delsrc=false)//产生缩略图函数
{
if(!file_exists($dir)){
mkdir($dir);
}
$srcInfo = getimagesize($src);//获取图片信息数组
$srcType = image_type_to_extension($srcInfo[2], false);//获取图片类型
$fun = 'imagecreatefrom' . $srcType;//由图片文件创建图像资源
$srcImage = $fun($src);
//创建缩略图资源
//$scale = $srcInfo[0] / $srcInfo[1];
//$height = $width / $scale;
$zoomImg = imagecreatetruecolor($width, $height);
//图像资源放到缩略图资源上
imagecopyresampled($zoomImg, $srcImage, 0, 0, 0, 0, $width, $height, $srcInfo[0], $srcInfo[1]);
//输出缩略图资源 $output = 'image' . $srcType;
$output($zoomImg, $dir. basename($src));
//销毁资源
imagedestroy($srcImage);
imagedestroy($zoomImg);
//删除原图
if($delsrc){
unlink($src);
}
}
上传图片并生成相关缩略图-PHP的更多相关文章
- Asp.Net 上传图片并生成高清晰缩略图
在asp.net中,上传图片功能或者是常用的,生成缩略图也是常用的.baidu或者google,c#的方法也是很多的,但是一用却发现缩略图不清晰啊,缩略图片太大之类的事情,下面是我在处理图片上的代码, ...
- Asp.Net 上传图片并生成高清晰缩略图(转)
在asp.net中,上传图片功能或者是常用的,生成缩略图也是常用的.baidu或者google,c#的方法也是很多的,但是一用却发现缩略图不清晰啊,缩略图片太大之类的事情,下面是我在处理图片上的代码, ...
- C#上传图片和生成缩略图以及图片预览
因工作需要,上传图片要增加MIME类型验证和生成较小尺寸的图片用于浏览.根据网上代码加以修改做出如下效果图: 前台代码如下: <html xmlns="http://www.w3.or ...
- C#上传图片同时生成缩略图,控制图片上传大小。
#region 上传图片生成缩略图 /// <summary> /// 上传图片 /// </summary> /// <param name="sender& ...
- PHP.24-TP框架商城应用实例-后台1-添加商品功能、钩子函数、在线编辑器、过滤XSS、上传图片并生成缩略图
添加商品功能 1.创建商品控制器[C] /www.test.com/shop/Admin/Controller/GoodsController.class.php <?php namespace ...
- MVC4 上传图片并生成缩略图
Views @using (Html.BeginForm("Create","img",FormMethod.Post, new { enctype = &qu ...
- C# webform上传图片并生成缩略图
其实里面写的很乱,包括修改文件名什么的都没有仔细去写,主要是想记录下缩略图生成的几种方式 ,大家明白就好! void UpImgs() { if (FileUpload1.HasFile) { str ...
- PHP一般情况下生成的缩略图都比较不理想
PHP用GD库生成高质量的缩略图片,PHP一般情况下生成的缩略图都比较不理想.今天试用PHP,GD库来生成缩略图.虽然并不100%完美.可是也应该可以满足缩略图的要求了.<?php $FILEN ...
- PHP 上传图片,生成水印,支持文字, gif, png
//admin_upfile.php <html> <meta http-equiv="Content-Type" content="text/html ...
随机推荐
- docker安装-centos7
操作系统要求 要安装Docker,您需要64位版本的CentOS 7.步骤: 卸载旧版本 Docker的旧版本被称为docker或docker-engine . 如果这些已安装,请卸载它们以及关联 ...
- C#基础篇--面向对象(类与对象)
1.类是什么? 类就相当于模板,就是把同一类的事物的共同特征进行的抽象. 类的创建和说明: 类是先根据一些具体的对象(实体的东西)来抽象出来的共同的特性,然后用代码来表示. 在类中,用数据表示事物的 ...
- 浅谈MVC数据验证
一.一般情况 对于使用过MVC框架的人来说,对MVC的数据验证不会陌生,比如,我有一个Model如下: public class UserInfo { [Required(ErrorMessage = ...
- python爬虫从入门到放弃(七)之 PyQuery库的使用
PyQuery库也是一个非常强大又灵活的网页解析库,如果你有前端开发经验的,都应该接触过jQuery,那么PyQuery就是你非常绝佳的选择,PyQuery 是 Python 仿照 jQuery 的严 ...
- 两强相争,鹿死谁手 — JQuery中的Ajax与AngularJS中的$http
一.JQuery与AngularJS 首先,先简单的了解一下JQuery与AngularJS.从源头上来说,两者都属于原生JS所封装成的库,两种为平行关系. 二.Ajax请求与数据遍历打印 这里是Aj ...
- nodejs中exports与module.exports的区别详细介绍
如果模块是一个特定的类型就用Module.exports.如果模块是一个典型的"实例化对象"就用exports. exports.name = function() { conso ...
- javaCV开发详解之2:推流器实现,推本地摄像头视频到流媒体服务器以及摄像头录制视频功能实现(基于javaCV-FFMPEG、javaCV-openCV)
javaCV系列文章: javacv开发详解之1:调用本机摄像头视频 javaCV开发详解之2:推流器实现,推本地摄像头视频到流媒体服务器以及摄像头录制视频功能实现(基于javaCV-FFMPEG.j ...
- Ceph Object Gateway Admin api 获取用户列表问题
按照官方文档使用Admin Ops API 获取用户列表 GET /admin/user时 返回{code: 403, message: Forbidden}这里有两个问题:首先用户列表的请求为 如下 ...
- JS学习笔记——JavaScript继承的6种方法(原型链、借用构造函数、组合、原型式、寄生式、寄生组合式)
JavaScript继承的6种方法 1,原型链继承 2,借用构造函数继承 3,组合继承(原型+借用构造) 4,原型式继承 5,寄生式继承 6,寄生组合式继承 1.原型链继承. <script t ...
- python 标准库 -- glob
glob glob.glob() import glob l = glob.glob("/root/*") # 返回列表 print l # 输出如下 ['/root/databa ...