图片上传 自定义设置图片大小

if($_FILES[‘img_slide‘][‘name‘]=="")

{

  $phpto_dir_name="";

  header("Content-type:text/html;charset=utf-8");

  echo "没有选择上传图片";

  return $this->getDefaultView();

}else{

  //将临时文件复制到upload_image目录下

  $img_slide=($_FILES[‘img_slide‘][‘tmp_name‘]);

  $smalladdrname="../upfile/";//缩略图存放目录位置

  $RESIZEWIDTH=‘795‘;//定义最大宽

  $RESIZEHEIGHT=‘440‘;//定义最大高

    if($_FILES[‘img_slide‘][‘size‘]){

    if($_FILES[‘img_slide‘][‘type‘] == "image/pjpeg" || $_FILES[‘img_slide‘][‘type‘] == "image/jpeg"){

      $im = imagecreatefromjpeg($_FILES[‘img_slide‘][‘tmp_name‘]);

    }elseif($_FILES[‘img_slide‘][‘type‘] == "image/x-png" || $_FILES[‘img_slide‘][‘type‘] == "image/png"){

      $im = imagecreatefrompng($_FILES[‘img_slide‘][‘tmp_name‘]);

    }elseif($_FILES[‘img_slide‘][‘type‘] == "image/gif"){

      $im = imagecreatefromgif($_FILES[‘img_slide‘][‘tmp_name‘]);

  }
    if($im){

      //图片限制大小

    if( $width = imagesx($im) < 795 || $height = imagesy($im) < 440 ){

      echo "图片太小了" .

      "location.href=‘index.php?module=Slide‘;</script>";

      return $this->getDefaultView();

    }

      //生成新的文件名

      $basename = time().rand(10,99);

      $newname = $smalladdrname.‘slt_‘.$basename.‘.jpg‘;

      // 图片是否存在

    if(file_exists($newname.".jpg")){

      unlink($newname.".jpg");

    }

      $this->ResizeImage($im,$RESIZEWIDTH,$RESIZEHEIGHT,$newname);

      ImageDestroy ($im);

      $phpto_dir_name = basename($newname);

    }else{

      echo "上传失败";

    return $this->getDefaultView();

    }

}

      //插入数据

      $sql = "insert into ntc_slide(img_title,img_slide,img_url,bgcolor,sort,add_date) " .

      "values(‘$img_title‘,‘$phpto_dir_name‘,‘$img_url‘,‘$bgcolor‘,‘$sort‘,CURRENT_TIMESTAMP)";

      $r = $db->insert($sql);

}

//调用方法

function ResizeImage($im,$maxwidth,$maxheight,$name){

  $smalladdrname="../upfile/";//缩略图存放目录位置

  $RESIZEWIDTH=‘795‘;//定义最大宽

  $RESIZEHEIGHT=‘440‘;//定义最大高

  $width = imagesx($im);

  $height = imagesy($im);

    if(($maxwidth && $width > $maxwidth) || ($maxheight && $height > $maxheight)){

      $newwidth = 795;

      $newheight = 440;

    if(function_exists("imagecopyresampled")){

      $newim = imagecreatetruecolor($newwidth, $newheight);

      imagecopyresampled($newim, $im, 0, 0, 0, 0, $newwidth, $newheight, $width, $height);

    }else{

      $newim = imagecreate($newwidth, $newheight);

      imagecopyresized($newim, $im, 0, 0, 0, 0, $newwidth, $newheight, $width, $height);

    }

      ImageJpeg ($newim,$smalladdrname.$name);

      ImageDestroy ($newim);

    }else{

      ImageJpeg ($im,$smalladdrname.$name);

  }

}

时间: 2024-08-11 05:46:02

图片上传 自定义设置图片大小的相关文章

ueditor样式过滤去除和远程图片上传自定义

ueditor自定义编辑的时候,比如需要做延迟加载,这个时候需要自定义图片等,但是,ueditor会去除img上面的属性,比如data-original和把远程图片自动上传. 这个时候,首先,需要给图片自动上传加上属性,不如对于jquery.lazyload延迟加载的图片,必定带有data-original属性,只要检测出此属性,就不远程上传.其它属性自定义提那家,代码如下: 'wordimage':{ execCommand:function () { var images = domUtil

html5 图片上传,支持图片预览、压缩、及进度显示,兼容IE6+及标准浏览器

原文:html5 图片上传,支持图片预览.压缩.及进度显示,兼容IE6+及标准浏览器 以前写过上传组件,见 打造 html5 文件上传组件,实现进度显示及拖拽上传,兼容IE6+及其它标准浏览器,对付一般的上传没有问题,不过如果是上传图片,且需要预览的话,就力有不逮了,趁着闲暇时间,给上传组件添加了单独的图片上传UI,支持图片预览和缩放(通过调整图片的大小以实现图片压缩). 上传组件特点 轻量级,不依赖任何JS库,核心代码(Q.Uploader.js)仅约700行,min版本加起来不到12KB 纯

图片上传时获取图片的宽和高

经常会遇到图片上传的问题,这时候我们会传图片的地址,宽和高到服务器,至于图片上传就不说了,这里主要说图片上传时获取图片的原始宽和高的问题. 一般而言,我们把图片上传至服务器时,服务器会返回一个上传地址给我们,这个就是我们图片的url了,但是光有这个还是不够的,因为还要将图片的宽和高传给服务器,这时候就可以这样做了.直接上代码: var img = new Image() img.src = url 然后就可以使用img.width和img.height来获取图片的宽和高了.当然仅仅这样做是不够的

上传自定义水印图片到图片空间及保存数据库的方法

(1).添加我的水印,按钮展示: <div class="form-actions"> <button data-toggle="modal" class="sui-btn btn-primary btn-large" onclick="addmywatermark();" >添加我的水印</button> </div> /** * 添加我的水印 **/ function add

DWZ集成的xhEditor编辑器浏览本地图片上传的设置

有关xhEditor的文件上传配置官方文档链接:http://i.hdu.edu.cn/dcp/dcp/comm/xheditor/demos/demo08.html 一.xhEditor图片上传的配置 DWZ集成的xhEditor默认的配置是默认模式没有如下图上传按钮的,如果需要本地浏览上传,则需相关的配置 这里拿上传图片为例: <textarea class="editor" upimgurl="@Url.Action("xhEditorImgUpload

妈蛋:kinMaxShow轮播图异常,WebUploader图片上传坑爹,图片被压缩了

今天晚上在改造轮播图. 原来的代码是这样的: <div> <img src="${static}/image/index/banner/`.jpg" /> </div> <div> <img src="${static}/image/index/banner/2.jpg" /> </div> <div> <img src="${static}/image/index/

关于图片上传时选择图片以后生成图片预览

实现选择图片之后生成预览图 <script type="text/javascript">    //下面用于多图片上传预览功能    function setImagePreviews() {        //获取选择图片的对象        var docObj = document.getElementById("filesid");        //后期显示图片区域的对象        var dd = document.getElement

前端手势控制图片插件书写四(图片上传及Ios图片方向问题)

1.在图片上传中,使用的input的type为File的属性.使用filereader的Api let that = this; var file = document.getElementById("file").files[0]; console.log(document.getElementById("file").files); if(!/image\/\w+/.test(file.type)){ console.error("看清楚,这个需要图片

ueditor使用-图片上传正常,图片显示异常404

做个小项目,用到了ueditor,其中需要在ueditor中上传图片. 问题症状: 点击上传图片的按钮后选择图片,上传到了目的文件夹,但是显示不了,f12查看也是404.后来发觉显示图片时路径不对. 解决方案: 翻看官网文档,找到了个博客:http://popozhu.github.io/2014/07/03/ueditor%E5%9B%BE%E7%89%87%E4%B8%8A%E4%BC%A0%E8%B7%AF%E5%BE%84%E9%85%8D%E7%BD%AE/ 说的还蛮详细.找了下原因,