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的更多相关文章

  1. Asp.Net 上传图片并生成高清晰缩略图

    在asp.net中,上传图片功能或者是常用的,生成缩略图也是常用的.baidu或者google,c#的方法也是很多的,但是一用却发现缩略图不清晰啊,缩略图片太大之类的事情,下面是我在处理图片上的代码, ...

  2. Asp.Net 上传图片并生成高清晰缩略图(转)

    在asp.net中,上传图片功能或者是常用的,生成缩略图也是常用的.baidu或者google,c#的方法也是很多的,但是一用却发现缩略图不清晰啊,缩略图片太大之类的事情,下面是我在处理图片上的代码, ...

  3. C#上传图片和生成缩略图以及图片预览

    因工作需要,上传图片要增加MIME类型验证和生成较小尺寸的图片用于浏览.根据网上代码加以修改做出如下效果图: 前台代码如下: <html xmlns="http://www.w3.or ...

  4. C#上传图片同时生成缩略图,控制图片上传大小。

    #region 上传图片生成缩略图 /// <summary> /// 上传图片 /// </summary> /// <param name="sender& ...

  5. PHP.24-TP框架商城应用实例-后台1-添加商品功能、钩子函数、在线编辑器、过滤XSS、上传图片并生成缩略图

    添加商品功能 1.创建商品控制器[C] /www.test.com/shop/Admin/Controller/GoodsController.class.php <?php namespace ...

  6. MVC4 上传图片并生成缩略图

    Views @using (Html.BeginForm("Create","img",FormMethod.Post, new { enctype = &qu ...

  7. C# webform上传图片并生成缩略图

    其实里面写的很乱,包括修改文件名什么的都没有仔细去写,主要是想记录下缩略图生成的几种方式 ,大家明白就好! void UpImgs() { if (FileUpload1.HasFile) { str ...

  8. PHP一般情况下生成的缩略图都比较不理想

    PHP用GD库生成高质量的缩略图片,PHP一般情况下生成的缩略图都比较不理想.今天试用PHP,GD库来生成缩略图.虽然并不100%完美.可是也应该可以满足缩略图的要求了.<?php $FILEN ...

  9. PHP 上传图片,生成水印,支持文字, gif, png

    //admin_upfile.php <html> <meta http-equiv="Content-Type" content="text/html ...

随机推荐

  1. Tomcat 安装与配置

    1. 将压缩文件“apache-tomcat-7.0.62.zip ”上传到linux系统目录:/home/下 2. 进入目录 cd /home/ 解压文件,执行如下命令:unzip apache-t ...

  2. Android Weekly Notes Issue #258

    Android Weekly Issue #258 May 21st, 2017 Android Weekly Issue #258 本期内容: 围绕着Google I/O的热潮, 本周的posts除 ...

  3. C#基础篇--面向对象(类与对象)

    1.类是什么?  类就相当于模板,就是把同一类的事物的共同特征进行的抽象. 类的创建和说明: 类是先根据一些具体的对象(实体的东西)来抽象出来的共同的特性,然后用代码来表示. 在类中,用数据表示事物的 ...

  4. vue实例的几个概念

    1.构造器 vue应用都是通过vue构造函数创建实例来启动的,在创建vue实例时需要传入一个options对象,该对象可以包含数据.模板.挂在元素.方法.生命周期钩子等选项: var vm = new ...

  5. 链表插入和删除,判断链表是否为空,求链表长度算法的,链表排序算法演示——C语言描述

    关于数据结构等的学习,以及学习算法的感想感悟,听了郝斌老师的数据结构课程,其中他也提到了学习数据结构的或者算法的一些个人见解,我觉的很好,对我的帮助也是很大,算法本就是令人头疼的问题,因为自己并没有学 ...

  6. nodejs实战:使用原生nodeJs模块实现静态文件及REST请求解析及响应(基于nodejs6.2.0版本,不使用express等webMVC框架 )

    一.准备工作 1.安装nodejs 首先你需要安装nodeJs 那么nodejs官网:http://nodejs.cn/,下载相应版本,一步一步安装. 二.使用nodejs开发服务器后台应用 1.创建 ...

  7. 测序分析软件-trimmomatic的记录

    1.下载相关软件,网址:http://www.usadellab.org/cms/index.php?page=trimmomatic,它有源代码和二进制两种文件(建议都下载,然后合并成一个文件,因为 ...

  8. nginx四层负载均衡配置

    nginx四层负载均衡配置代理Mysql集群 环境如下: ip 192.168.6.203 Nginx ip 192.168.6.*(多台) Mysql 步骤一 查看Nginx是否安装stream模块 ...

  9. 【Windows 10 应用开发】使用快捷访问键

    UWP 虽然主要面向触控操作,但 Windows 设备是万能工具,不用手指不用笔的时候,也可能会接上键盘耍耍.因此,给应用界面上的一些元素弄个快捷访问键也挺不错的.为了使用 Windows 上的各类应 ...

  10. java基础之IO篇

    IO流 在计算机中的流是有方向的即为IO流,分为输入流和输出流,他们的方向都是以服务的方向为主,向服务器中发送指令等等就是输出流,服务器给出的反应等等,我们都说为输出流. 字节流 字符流 输入流 In ...