基础

cls_images.php:  function upload_image(){}

$_FILES 输出值:Array ( [group_thumb_url] => Array ( [name] => [type] => [tmp_name] => [error] => 4 [size] => 0 ) )

实际操作

html代码:

<form method="post" action="group_buy.php?act=insert_update" name="theForm" onsubmit="return validate()" enctype="multipart/form-data">
<input type="file" name="group_thumb_url" size="" />
</form>

注意 :enctype="multipart/form-data" 不能丢掉

php代码

include_once(ROOT_PATH . '/includes/cls_image.php');  /*必须加上*/
$image = new cls_image($_CFG['bgcolor']);

$group_thumb_name = 'group_'.time().'.jpg';  /*图片名称命名*/
$upload_image= basename($image->upload_image($_FILES['group_thumb_url'],'group',$group_thumb_name));

if(!empty($upload_image)){     /*判断是否有新的文件上传*/
$group_thumb = $upload_image;
}

cls_images.php

 function upload_image($upload, $dir = '', $img_name = '')
{
/* 没有指定目录默认为根目录images */
if (empty($dir))
{
/* 创建当月目录 */
$dir = date('Ym');
$dir = ROOT_PATH . $this->images_dir . '/' . $dir . '/';
}
else
{
/* 创建目录 */
//$dir = ROOT_PATH . $this->data_dir . '/' . $dir . '/';
$dir = ROOT_PATH .'/images/'. $dir; /*新增 文件只想地址是跟目录下images/ */
if ($img_name)
{
$img_name = $dir . $img_name; // 将图片定位到正确地址
}
} /* 如果目标目录不存在,则创建它 */
if (!file_exists($dir))
{
if (!make_dir($dir))
{
/* 创建目录失败 */
$this->error_msg = sprintf($GLOBALS['_LANG']['directory_readonly'], $dir);
$this->error_no = ERR_DIRECTORY_READONLY; return false;
}
} if (empty($img_name))
{
$img_name = $this->unique_name($dir);
$img_name = $dir . $img_name . $this->get_filetype($upload['name']);
} if (!$this->check_img_type($upload['type']))
{
$this->error_msg = $GLOBALS['_LANG']['invalid_upload_image_type'];
$this->error_no = ERR_INVALID_IMAGE_TYPE;
return false;
} /* 允许上传的文件类型 */
$allow_file_types = '|GIF|JPG|JEPG|PNG|BMP|SWF|';
if (!check_file_type($upload['tmp_name'], $img_name, $allow_file_types))
{
$this->error_msg = $GLOBALS['_LANG']['invalid_upload_image_type'];
$this->error_no = ERR_INVALID_IMAGE_TYPE;
return false;
} if ($this->move_file($upload, $img_name))
{
return str_replace(ROOT_PATH, '', $img_name);
}
else
{
$this->error_msg = sprintf($GLOBALS['_LANG']['upload_failure'], $upload['name']);
$this->error_no = ERR_UPLOAD_FAILURE; return false;
}
}

ecshop添加上传图片的更多相关文章

  1. ecshop 添加后台页面以及设置权限

    转自 http://blog.csdn.net/tgh1981/article/details/10394059 ecshop 添加新页面 给ecshop后台增加管理功能页面 比如我们增加一个统计报表 ...

  2. ecshop添加商品选择品牌时如何按拼音排序

    ECSHOP后台添加新商品时,有一个选择品牌的下拉框,如果品牌太多,在下拉框里查找起来很不方便. 我想给“下拉框里的品牌列表”按品牌名的拼音排序,比如有“中国水利出版社” “中国人民出版社” 这两个品 ...

  3. ECSHOP添加购物车加图片飞入效果

    为ECSHOP的添加购物车,加入图片飞入效果. 首先: 在goods.dwt中查找添加购物车按钮: 为添加购物车按钮加上id: 例如: <a id="iproduct_{$goods. ...

  4. ecshop添加商品筛选功能

    ecshop商品属性一直是使用问题的难点,而“属性筛选”更是ecshop属性中的难点,那么下面来详细说明一下 属性筛选功能 第一,属性筛选的特点: 属性筛选必须是分类页才会显示,列出所有商品的唯一属性 ...

  5. ECShop 添加文章时作者默认为当前登录用户

    打开admin\article.php文件 查找代码 $article['is_open'] = 1; 在下边添加代码 $article['author'] = $_SESSION['admin_na ...

  6. ecshop添加菜单以及权限分配

    增加菜单并添加权限: admin/includes/inc_menu.php 添加 $modules['**_name1']['name2'] = 'your href' admin/includes ...

  7. EXTJS中整合tinymce的富文本编辑器,添加上传图片功能

    提供部分代码.Ext.create('Ext.window.Window', { id: 'wind', title: 'CRUD窗口', modal: true, height: 800, widt ...

  8. HTML添加上传图片并进行预览

    使用说明:新建文件,直接复制粘贴,保存文件为html 格式,在浏览器运行即可: 第一种: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Tr ...

  9. (转)ECSHOP给分类添加代表图

    转之--http://www.cnblogs.com/wangblognet/archive/2012/12/09/2809916.html ecshop的模板有很多不完善的地方,比如添加商品分类的时 ...

随机推荐

  1. 【BZOJ 4269】再见Xor

    zky学长提供的线性基求法: for(int i=1;i<=n;i++) for(int j=64;j>=1;j--) { if(a[i]>>(j-1)&1) { if ...

  2. 概率 高消light oj 1151

    t个样例 n个楼梯或蛇; a b 刚好走到a会到b; 问走到100期望; dp[i]   i到100的期望 这一点没奇怪的东西 dp[i]=1/6(dp[i+1]+dp[i+2]..+6); 有   ...

  3. 51nod 1422(强行YY)

    1422 沙拉酱前缀 题目来源: CodeForces 基准时间限制:1 秒 空间限制:131072 KB 分值: 40 难度:4级算法题  收藏  关注 沙拉酱非常喜欢数字序列.这正是他要弄一个关于 ...

  4. 172C

    模拟 #include<iostream> #include<algorithm> #include<vector> #include<cstdio> ...

  5. 寻找数组中第K频繁的元素

    问题是:给你一个数组,求解出现次数第K多的元素.当然leetcode上的要求是算法复杂度不能大于O(N*logN). 首先这个问题我先是在leetcode上看到,当时想了两种做法,做到一半都觉得不是很 ...

  6. BZOJ 1853: [Scoi2010]幸运数字

    1853: [Scoi2010]幸运数字 Time Limit: 2 Sec  Memory Limit: 64 MBSubmit: 2117  Solved: 779[Submit][Status] ...

  7. xcoj1062

    题意:给出一个闭合折线上的一堆点(不按顺序),然后再给一个点P,要求判断P是否在闭合折线内 sol attempt1:一开始觉得是个模板题的,后来发现不对劲: 给出的点并不按照顺序.这样模板大法就不行 ...

  8. Non Lasting Storage File System、procfs、sysfs

    catalog . 引言 . proc文件系统 . 简单的文件系统 . sysfs 0. 引言 传统上,文件系统用于在块设备上持久存储数据,但也可以使用文件系统来组织.提供.交换并不存储在块设备上的信 ...

  9. 帝国备份王(Empirebak) \class\functions.php、\class\combakfun.php GETSHELL vul

    catalog . 漏洞描述 . 漏洞触发条件 . 漏洞影响范围 . 漏洞代码分析 . 防御方法 . 攻防思考 1. 漏洞描述 EmpireBak是一款完全免费.专门为Mysql大数据的备份与导入而设 ...

  10. [IOS多线程]的使用:防止进行HTTP数据请求时,UI卡死。

    多线程的实现:NSThread 1.子线程的创建:两种方法 第一种: [NSThread detachNewThreadSelector:@selector(downloadImage:) toTar ...