您当前的位置: 首页 > 网站编程 > PHP教程 > 在php中使用jquery uploadify进行多图片上传

在php中使用jquery uploadify进行多图片上传

作者:不详 来源:网络 发布时间: 2014-08-05 08:55 点击:
jquery uploadify是一款Ajax风格的批量图片上传插件,在PHP中使用jquery uploadify很方便,请按照本文介绍的方法和步骤,为你的PHP程序增加jquery uploadify插件的批量上传图片功能。 本文是以dilicms为基础,为其增加图片上传功能。 1.增加数据表dili_fieldtypes新字

在php中使用jquery uploadify进行多图片上传

  jquery uploadify是一款Ajax风格的批量图片上传插件,在PHP中使用jquery uploadify很方便,请按照本文介绍的方法和步骤,为你的PHP程序增加jquery uploadify插件的批量上传图片功能。

  本文是以dilicms为基础,为其增加图片上传功能。

  1.增加数据表dili_fieldtypes新字段:k=>image,V=>图片上传区域(VACHAR);

  2.修改application/libraries/dili/Field_behavior.php,在switch中增加如下代码:

  1case 'image':

  2$field=array(

  3'type'=>'VARCHAR',

  4'constraint'=>255,

  5'default'=>' '

  6);

  7break;

  3. 修改 application/libraries/dili/Form.php 并且增加如下代码:

  1function _image($fileld,$default){

  2//$type= 'type=hidden';

  3//$width=($field['width'] ? $field['width'] : '570') .'px;';

  4//$height=($field['height'] ? $field['height'] : '415') .'px;';

  5return ;

  6}

  4.在content_form.php和category_content_form.php中增加判断代码:

  01

  02 if($v['type']=="image"):

  03?>

  04

  05

  06

  07上传

  08取消上传

  09

  10" value=""/>

  11" value=""/>

  12asset/js/uploadify/uploadify.css" type="text/css" rel="stylesheet" />

  13

  14

  42

  6. 新建photo.php文件:

  01

  02if ( ! defined('BASEPATH')) exit('No direct script access allowed');

  03date_default_timezone_set('Asia/Shanghai');

  04class Photo extends Front_Controller{

  05 public function __construct()

  06 {

  07 parent::__construct();

  08 }

  09 function _getFilePath()

  10 {

  11 $path="attachments/".date("Y")."/";

  12 if(!file_exists($path)){

  13 mkdir($path,'777');

  14 }

  15 $path.=date("m")."/";

  16 if(!file_exists($path)){

  17 mkdir($path,'777');

  18 }

  19 return $path;

  20 }

  21 function _creat_photothumbs($FileName,$setW){

  22 $IMGInfo= getimagesize($FileName);

  23 if(!$IMGInfo) return false;

  24 if($IMGInfo['mime']== "image/pjpeg" || $IMGInfo['mime']=="image/jpeg"){

  25 $ThisPhoto= imagecreatefromjpeg($FileName);

  26 }elseif($IMGInfo['mime']== "image/x-png" || $IMGInfo['mime']== "image/png"){

  27 $ThisPhoto= imagecreatefrompng($FileName);

  28 }elseif($IMGInfo['mime']== "image/gif"){

  29 $ThisPhoto=imagecreatefromgif($FileName);

  30 }

  31 $width=$IMGInfo['0'];

  32 $height=$IMGInfo['1'];

  33 $scale=$height/$width;

  34 $nw=$setW;

  35 $nh=$nw*$scale;

  36 $NewPhoto=imagecreatetruecolor($nw,$nh);

  37 imagecopyresampled($NewPhoto,$ThisPhoto,0,0,0,0,$nw,$nh,$width,$height);

  38 ImageJpeg ($NewPhoto,$FileName);

  39 return true;

  40 }

  41 function _savephoto_post(){

  42 $dest_dir =$this->_getFilePath();

  43 if (!empty($_FILES)) {

  44 $date = date('Ymd');

  45 //$dest_dir =$this->_getFilePath();

  46 $photoname = $_FILES["Filedata"]['name'];

  47 $phototype = $_FILES['Filedata']['type'];

  48 $photosize = $_FILES['Filedata']['size'];

  49 $fileInfo=pathinfo($photoname);

  50 $extension=$fileInfo['extension'];

  51 $newphotoname = date("YmdHis").mt_rand(10000,99999).'.'.$extension;

  52 $dest=$dest_dir.$newphotoname;

  53 //move_uploaded_file($_FILES['Filedata']['tmp_name'], iconv("UTF-8","gb2312",$dest));

  54 move_uploaded_file($_FILES['Filedata']['tmp_name'], $dest);

  55 //chmod($dest, 0755);

  56 //如果宽度大于600则要进行裁剪

  57 $arr=getimagesize($dest);

  58 if($arr[0]>600){

  59 $thumb_w=600;

  60 $this->_creat_photothumbs($dest,$thumb_w);

  61 }

  62 //生成缩略图

  63 $config2['image_library'] = 'gd2';

  64 $config2['source_image'] = $dest;

  65 $config2['create_thumb'] = TRUE;

  66 $config2['maintain_ratio'] = TRUE;

  67 $config2['width'] = 170;

  68 $config2['height'] = 150;

  69 $config2['master_dim']="width";

  70 $config2['thumb_marker']="_1";

  71 $this->load->library('image_lib', $config2);

  72 $this->image_lib->resize();

  73 echo $dest;

  74 }

  75 }

  76}

  77?>

  好了,可以测试了。
分享到:
本文"在php中使用jquery uploadify进行多图片上传"由远航站长收集整理而来,仅供大家学习与参考使用。更多网站制作教程尽在远航站长站。
顶一下
(0)
0%
踩一下
(0)
0%
[点击 次] [返回上一页] [打印]
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 密码: 验证码:
关于本站 - 联系我们 - 网站声明 - 友情连接- 网站地图 - 站点地图 - 返回顶部
Copyright © 2007-2013 www.yhzhan.com(远航站长). All Rights Reserved .
远航站长:为中小站长提供最佳的学习与交流平台,提供网页制作与网站编程等各类网站制作教程.
官方QQ:445490277 网站群:26680406 网站备案号:豫ICP备07500620号-4