




已阅读5页,还剩26页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
ecshop 后台增加上传图片项 2012-02-07 13:25:06| 分类: Ecshop | 标签:ecshop 上传图片 |举报|字号 订阅最近在研究ecshop,想后台添加/修改商品的时候,增加一个自己上传图片的功能,看了一下,修改如下(还想在images/年月/下建立一个新的文件夹goods_new_img 准备:首先要先建立好goods_new_img,并且要有相关的权限)goods_info.html $lang.lab_picturenew goods.php/*- */- 添加新商品 编辑商品/*- */elseif ($_REQUESTact = add | $_REQUESTact = edit | $_REQUESTact = copy) /这里面要改的东东,也就是复制商品里面的相应代码,自己看着改就是了 /* 如果是复制商品,处理 */ if ($_REQUESTact = copy)最主要的是修改下面的内容了,黑体加粗的就是修改或添加的内容了.(因为我的ecshop已经修改过了,所以行码可能不准,大家仔细分辨一下就清楚了)./*- */- 插入商品 更新商品/*- */elseif ($_REQUESTact = insert | $_REQUESTact = update) $code = empty($_REQUESTextension_code) ? : trim($_REQUESTextension_code); /* 是否处理缩略图 */ $proc_thumb = (isset($GLOBALSshop_id) & $GLOBALSshop_id 0)? false : true; if ($code = virtual_card) admin_priv(virualcard); / 检查权限 else admin_priv(goods_manage); / 检查权限 /* 检查货号是否重复 */ if ($_POSTgoods_sn) $sql = SELECT COUNT(*) FROM . $ecs-table(goods) . WHERE goods_sn = $_POSTgoods_sn AND is_delete = 0 AND goods_id $_POSTgoods_id; if ($db-getOne($sql) 0) sys_msg($_LANGgoods_sn_exists, 1, array(), false); /* (self)检查图片:如果有错误,检查尺寸是否超过最大值;否则,检查文件类型 */ if (isset($_FILESgoods_new_imgerror) / php 4.2 版本才支持 error / 最大上传文件大小 $php_maxsize = ini_get(upload_max_filesize); $htm_maxsize = 2M; / 商品图片 if ($_FILESgoods_new_imgerror = 0) if (!$image-check_img_type($_FILESgoods_new_imgtype) sys_msg($_LANGinvalid_goods_img, 1, array(), false); elseif ($_FILESgoods_new_imgerror = 1) sys_msg(sprintf($_LANGgoods_img_too_big, $php_maxsize), 1, array(), false); elseif ($_FILESgoods_new_imgerror = 2) sys_msg(sprintf($_LANGgoods_img_too_big, $htm_maxsize), 1, array(), false); /* 检查图片:如果有错误,检查尺寸是否超过最大值;否则,检查文件类型 */ if (isset($_FILESgoods_imgerror) / php 4.2 版本才支持 error / 最大上传文件大小 $php_maxsize = ini_get(upload_max_filesize); $htm_maxsize = 2M; / 商品图片 if ($_FILESgoods_imgerror = 0) if (!$image-check_img_type($_FILESgoods_imgtype) sys_msg($_LANGinvalid_goods_img, 1, array(), false); elseif ($_FILESgoods_imgerror = 1) sys_msg(sprintf($_LANGgoods_img_too_big, $php_maxsize), 1, array(), false); elseif ($_FILESgoods_imgerror = 2) sys_msg(sprintf($_LANGgoods_img_too_big, $htm_maxsize), 1, array(), false); / 商品缩略图 if (isset($_FILESgoods_thumb) if ($_FILESgoods_thumberror = 0) if (!$image-check_img_type($_FILESgoods_thumbtype) sys_msg($_LANGinvalid_goods_thumb, 1, array(), false); elseif ($_FILESgoods_thumberror = 1) sys_msg(sprintf($_LANGgoods_thumb_too_big, $php_maxsize), 1, array(), false); elseif ($_FILESgoods_thumberror = 2) sys_msg(sprintf($_LANGgoods_thumb_too_big, $htm_maxsize), 1, array(), false); / 相册图片 foreach ($_FILESimg_urlerror AS $key = $value) if ($value = 0) if (!$image-check_img_type($_FILESimg_urltype$key) sys_msg(sprintf($_LANGinvalid_img_url, $key + 1), 1, array(), false); elseif ($value = 1) sys_msg(sprintf($_LANGimg_url_too_big, $key + 1, $php_maxsize), 1, array(), false); elseif ($_FILESimg_urlerror = 2) sys_msg(sprintf($_LANGimg_url_too_big, $key + 1, $htm_maxsize), 1, array(), false); /* 4.1版本 */ else / 商品图片 if ($_FILESgoods_imgtmp_name != none) if (!$image-check_img_type($_FILESgoods_imgtype) sys_msg($_LANGinvalid_goods_img, 1, array(), false); / 商品缩略图 if (isset($_FILESgoods_thumb) if ($_FILESgoods_thumbtmp_name != none) if (!$image-check_img_type($_FILESgoods_thumbtype) sys_msg($_LANGinvalid_goods_thumb, 1, array(), false); / 相册图片 foreach ($_FILESimg_urltmp_name AS $key = $value) if ($value != none) if (!$image-check_img_type($_FILESimg_urltype$key) sys_msg(sprintf($_LANGinvalid_img_url, $key + 1), 1, array(), false); /* 插入还是更新的标识 */ $is_insert = $_REQUESTact = insert; /* 处理商品图片 */ $goods_img = ; / 初始化商品图片 $goods_new_img = ; / 初始化商品图片2 $goods_thumb = ; / 初始化商品缩略图 $original_img = ; / 初始化原始图片 $old_original_img = ; / 初始化原始图片旧图 / 是否上传商品图片new if (isset($_FILESgoods_new_img) & $_FILESgoods_new_imgtmp_name != & isset($_FILESgoods_new_imgtmp_name) &$_FILESgoods_new_imgtmp_name != none) / 上传了,直接使用,原始大小 $goods_new_img = $image-upload_image($_FILESgoods_new_img); if ($goods_new_img = false) sys_msg($image-error_msg(), 1, array(), false); / 如果上传了商品图片,相应处理 if ($_FILESgoods_imgtmp_name != & $_FILESgoods_imgtmp_name != none) or ($_POSTgoods_img_url != $_LANGlab_picture_url & $_POSTgoods_img_url != http:/) & $is_url_goods_img = 1) if ($_REQUESTgoods_id 0) /* 删除原来的图片文件 */ $sql = SELECT goods_thumb, goods_img, original_img . FROM . $ecs-table(goods) . WHERE goods_id = $_REQUESTgoods_id; $row = $db-getRow($sql); if ($rowgoods_thumb != & is_file(./ . $rowgoods_thumb) unlink(./ . $rowgoods_thumb); if ($rowgoods_img != & is_file(./ . $rowgoods_img) unlink(./ . $rowgoods_img); if ($roworiginal_img != & is_file(./ . $roworiginal_img) /* 先不处理,以防止程序中途出错停止 */ /$old_original_img = $roworiginal_img; /记录旧图路径 /* 清除原来商品图片 */ if ($proc_thumb = false) get_image_path($_REQUESTgoods_id, $rowgoods_img, false, goods, true); get_image_path($_REQUESTgoods_id, $rowgoods_thumb, true, goods, true); if (empty($is_url_goods_img) $original_img = $image-upload_image($_FILESgoods_img); / 原始图片 elseif (copy(trim($_POSTgoods_img_url), ROOT_PATH . temp/ . basename($_POSTgoods_img_url) $original_img = temp/ . basename($_POSTgoods_img_url); if ($original_img = false) sys_msg($image-error_msg(), 1, array(), false); $goods_img = $original_img; / 商品图片 /* 复制一份相册图片 */ /* 添加判断是否自动生成相册图片 */ if ($_CFGauto_generate_gallery) $img = $original_img; / 相册图片 $pos = strpos(basename($img), .); $newname = dirname($img) . / . $image-random_filename() . substr(basename($img), $pos); if (!copy(./ . $img, ./ . $newname) sys_msg(fail to copy file: . realpath(./ . $img), 1, array(), false); $img = $newname; $gallery_img = $img; $gallery_thumb = $img; / 如果系统支持GD,缩放商品图片,且给商品图片和相册图片加水印 if ($proc_thumb & $image-gd_version() 0 & $image-check_img_function($_FILESgoods_imgtype) | $is_url_goods_img) if (empty($is_url_goods_img) / 如果设置大小不为0,缩放图片 if ($_CFGimage_width != 0 | $_CFGimage_height != 0) $goods_img = $image-make_thumb(./. $goods_img , $GLOBALS_CFGimage_width, $GLOBALS_CFGimage_height); if ($goods_img = false) sys_msg($image-error_msg(), 1, array(), false); /* 添加判断是否自动生成相册图片 */ if ($_CFGauto_generate_gallery) $newname = dirname($img) . / . $image-random_filename() . substr(basename($img), $pos); if (!copy(./ . $img, ./ . $newname) sys_msg(fail to copy file: . realpath(./ . $img), 1, array(), false); $gallery_img = $newname; / 加水印 if (intval($_CFGwatermark_place) 0 & !empty($GLOBALS_CFGwatermark) if ($image-add_watermark(./.$goods_img,$GLOBALS_CFGwatermark, $GLOBALS_CFGwatermark_place, $GLOBALS_CFGwatermark_alpha) = false) sys_msg($image-error_msg(), 1, array(), false); /* 添加判断是否自动生成相册图片 */ if ($_CFGauto_generate_gallery) if ($image-add_watermark(./. $gallery_img,$GLOBALS_CFGwatermark, $GLOBALS_CFGwatermark_place, $GLOBALS_CFGwatermark_alpha) = false) sys_msg($image-error_msg(), 1, array(), false); / 相册缩略图 /* 添加判断是否自动生成相册图片 */ if ($_CFGauto_generate_gallery) if ($_CFGthumb_width != 0 | $_CFGthumb_height != 0) $gallery_thumb = $image-make_thumb(./ . $img, $GLOBALS_CFGthumb_width, $GLOBALS_CFGthumb_height); if ($gallery_thumb = false) sys_msg($image-error_msg(), 1, array(), false); /* 取消该原图复制流程 */ / else / / /* 复制一份原图 */ / $pos = strpos(basename($img), .); / $gallery_img = dirname($img) . / . $image-random_filename() . / substr(basename($img), $pos); / if (!copy(./ . $img, ./ . $gallery_img) / / sys_msg(fail to copy file: . realpath(./ . $img), 1, array(), false); / / $gallery_thumb = ; / / 是否上传商品缩略图 if (isset($_FILESgoods_thumb) & $_FILESgoods_thumbtmp_name != & isset($_FILESgoods_thumbtmp_name) &$_FILESgoods_thumbtmp_name != none) / 上传了,直接使用,原始大小 $goods_thumb = $image-upload_image($_FILESgoods_thumb); if ($goods_thumb = false) sys_msg($image-error_msg(), 1, array(), false); else / 未上传,如果自动选择生成,且上传了商品图片,生成所略图 if ($proc_thumb & isset($_POSTauto_thumb) & !empty($original_img) / 如果设置缩略图大小不为0,生成缩略图 if ($_CFGthumb_width != 0 | $_CFGthumb_height != 0) $goods_thumb = $image-make_thumb(./ . $original_img, $GLOBALS_CFGthumb_width, $GLOBALS_CFGthumb_height); if ($goods_thumb = false) sys_msg($image-error_msg(), 1, array(), false); else $goods_thumb = $original_img; / print_r(IMAGE_DIR);exit; /* 删除下载的外链原图 */ if (!empty($is_url_goods_img) unlink(ROOT_PATH . $original_img); empty($newname) | unlink(ROOT_PATH . $newname); $url_goods_img = $goods_img = $original_img = htmlspecialchars(trim($_POSTgoods_img_url); /* 如果没有输入商品货号则自动生成一个商品货号 */ if (empty($_POSTgoods_sn) $max_id = $is_insert ? $db-getOne(SELECT MAX(goods_id) + 1 FROM .$ecs-table(goods) : $_REQUESTgoods_id; $goods_sn = generate_goods_sn($max_id); else $goods_sn = $_POSTgoods_sn; /* 处理商品数据 */ $shop_price = !empty($_POSTshop_price) ? $_POSTshop_price : 0; $goods_freight = !empty($_POSTgoods_freight) ? $_POSTgoods_freight : 0; $sold_num = !empty($_POSTsold_num) ? $_POSTsold_num : 0; $market_price = !empty($_POSTmarket_price) ? $_POSTmarket_price : 0; $promote_price = !empty($_POSTpromote_price) ? floatval($_POSTpromote_price ) : 0; $is_promote = empty($promote_price) ? 0 : 1; $promote_start_date = ($is_promote & !empty($_POSTpromote_start_date) ? local_strtotime($_POSTpromote_start_date) : 0; $promote_end_date = ($is_promote & !empty($_POSTpromote_end_date) ? local_strtotime($_POSTpromote_end_date) : 0; $goods_weight = !empty($_POSTgoods_weight) ? $_POSTgoods_weight * $_POSTweight_unit : 0; $is_best = isset($_POSTis_best) ? 1 : 0; $is_new = isset($_POSTis_new) ? 1 : 0; $is_hot = isset($_POSTis_hot) ? 1 : 0; $is_on_sale = isset($_POSTis_on_sale) ? 1 : 0; $is_alone_sale = isset($_POSTis_alone_sale) ? 1 : 0; $is_shipping = isset($_POSTis_shipping) ? 1 : 0; $goods_number = isset($_POSTgoods_number) ? $_POSTgoods_number : 0; $warn_number = isset($_POSTwarn_number) ? $_POSTwarn_number : 0; $goods_type = isset($_POSTgoods_type) ? $_POSTgoods_type : 0; $give_integral = isset($_POSTgive_integral) ? intval($_POSTgive_integral) : -1; $rank_integral = isset($_POSTrank_integral) ? intval($_POSTrank_integral) : -1; $suppliers_id = isset($_POSTsuppliers_id) ? intval($_POSTsuppliers_id) : 0; $goods_name_style = $_POSTgoods_name_color . + . $_POSTgoods_name_style; $catgory_id = empty($_POSTcat_id) ? : intval($_POSTcat_id); $brand_id = empty($_POSTbrand_id) ? : intval($_POSTbrand_id); $goods_thumb = (empty($goods_thumb) & !empty($_POSTgoods_thumb_url) & goods_parse_url($_POSTgoods_thumb_url) ? htmlspecialchars(trim($_POSTgoods_thumb_url) : $goods_thumb; $goods_thumb = (empty($goods_thumb) & isset($_POSTauto_thumb)? $goods_img : $goods_thumb; /* 入库 */ if ($is_insert) if ($code = ) $sql = INSERT INTO . $ecs-table(goods) . (goods_name,goods_seo_name, goods_name_style, goods_sn, . cat_id, brand_id, shop_price,goods_freight,sold_num,market_price, is_promote, promote_price, . promote_start_date, promote_end_date, goods_img, goods_thumb, original_img, goods_new_img,keywords, goods_brief, . seller_note, goods_weight, goods_number, warn_number, integral, give_integral, is_best, is_new, is_hot, . is_on_sale, is_alone_sale, is_shipping, goods_desc, add_time, last_update, goods_type, rank_integral, suppliers_id) . VALUES ($_POSTgoods_name,$_POSTgoods_seo_name, $goods_name_style, $goods_sn, $catgory_id, . $brand_id, $shop_price, $goods_freight,$sold_num, $market_price, $is_promote,$promote_price, . $promote_start_date, $promote_end_date, $goods_img, $goods_thumb, $original_img, $goods_new_img,. $_POSTkeywords, $_POSTgoods_brief, $_POSTseller_note, $goods_weight, $goods_number,. $warn_number, $_POSTintegral, $give_integral, $is_best, $is_new, $is_hot, $is_on_sale, $is_alone_sale, $is_shipping, . $_POSTgoods_desc, . gmtime() . , . gmtime() ., $goods_type, $r
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年全国小学生“学宪法、讲宪法”活动知识竞赛题库及答案
- 家具搭配专业知识培训课件
- 2025年初入职场必-备面试技巧与模拟题解答手册
- 长春工程学院《电子商务》2024-2025学年第一学期期末试卷
- 2025年炼钢专业高级职位面试要点及模拟题详解
- 桂林学院《管理沟通》2024-2025学年第一学期期末试卷
- 湖北黄冈应急管理职业技术学院《细胞分子生物学》2024-2025学年第一学期期末试卷
- 盘锦职业技术学院《平面构成》2024-2025学年第一学期期末试卷
- 铁门关职业技术学院《信息检索与分析》2024-2025学年第一学期期末试卷
- 2025年初阶火电运行值班员实务模拟题与解析
- 端子铆压标准规范
- csc服务分包考试
- 高级(三级)育婴师理论试题-附答案
- YY 0271.1-2016牙科学水基水门汀第1部分:粉/液酸碱水门汀
- GB/T 30146-2013公共安全业务连续性管理体系要求
- GB 1886.232-2016食品安全国家标准食品添加剂羧甲基纤维素钠
- 地理信息系统技术概述课件
- 美育PPT精选文档课件
- 医院介入手术病人护送交接流程
- 农机职业技能竞赛农机修理工理论题库
- 食品物流学:食品配送课件
评论
0/150
提交评论