基础

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. c# Winform 开发分屏显示应用程序

    分屏显示即可把一台主机内运行的多个程序分别显示在不同的两个(或多个)屏幕上.目前市面上主流的显卡都支持分屏显示(显示双屏幕),如果需要显示2个以上的屏幕,则应使用“拖机卡”类的硬件. 设置分屏显示的两 ...

  2. iOS开发--QQ音乐练习,后台播放和锁屏界面

    一.设置后台播放 首先允许程序后台播放 代码实现 - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOpti ...

  3. Mybatis中 sequence不能自增长

    解决方案: 参考: http://leeyee.github.io/blog/2013/08/22/mybatis-auto-increment-primary-key/ <insert id= ...

  4. Jquery.min.js 下载

    Jquery 下载:http://www.jq22.com/jquery-info122

  5. Msyql-检测数据库版本

    show variables like '%version%'; 数据库版本结果: "protocol_version","" "version&qu ...

  6. MySQL 配置优化

    1.   连接请求的变量: A.max_connections 如果服务器的并发连接请求量比较大,建议调高此值,以增加并行连接数量, 当然这建立在机器能支撑的情况下,因为如果连接数越多,介于MySQL ...

  7. Redis的复制(Master/Slave)

    是什么 : 也就是我们所说的主从复制,主机数据更新后根据配置和策略,自动同步到备机的master/slaver机制,Master以写为主,Slave以读为主 能干嘛: 读写分离,容灾恢复 怎么玩: 1 ...

  8. BP神经网络推导过程详解

    BP算法是一种最有效的多层神经网络学习方法,其主要特点是信号前向传递,而误差后向传播,通过不断调节网络权重值,使得网络的最终输出与期望输出尽可能接近,以达到训练的目的. 一.多层神经网络结构及其描述 ...

  9. Leetcode Power of two, three, four

    Given an integer, write a function to determine if it is a power of two. Hint: Could you solve it in ...

  10. Invalid initial heap size: -Xms

    -Xxs512m注意 Xxs 和 512m中间无空格就行了.