本文整理汇总了PHP中Uploader::file_info方法的典型用法代码示例。如果您正苦于以下问题:PHP Uploader::file_info方法的具体用法?PHP Uploader::file_info怎么用?PHP Uploader::file_info使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Uploader
的用法示例。
在下文中一共展示了Uploader::file_info方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: array
function _upload_file()
{
$ret_info = array();
// 返回到客户端的信息
$file = $_FILES['Filedata'];
if ($file['error'] == UPLOAD_ERR_NO_FILE) {
$this->json_error('no_upload_file');
exit;
}
import('uploader.lib');
// 导入上传类
import('image.func');
$uploader = new Uploader();
$uploader->allowed_type(IMAGE_FILE_TYPE);
// 限制文件类型
$uploader->allowed_size(SIZE_GOODS_IMAGE);
// 限制单个文件大小2M
$uploader->addFile($file);
if (!$uploader->file_info()) {
$this->json_error($uploader->get_error());
exit;
}
/* 取得剩余空间(单位:字节),false表示不限制 */
$store_mod =& m('store');
$settings = $store_mod->get_settings($this->store_id);
$remain = $settings['space_limit'] > 0 ? $settings['space_limit'] * 1024 * 1024 - $this->mod_uploadedfile->get_file_size($this->store_id) : false;
/* 判断能否上传 */
if ($remain !== false) {
if ($remain < $file['size']) {
$this->json_error('space_limit_arrived');
exit;
}
}
/* 指定保存位置的根目录 */
$uploader->root_dir(ROOT_PATH);
$filename = $uploader->random_filename();
/* 上传 */
$file_path = $uploader->save($this->save_path, $filename);
// 保存到指定目录
if (!$file_path) {
$this->json_error('file_save_error');
exit;
}
$file_type = $this->_return_mimetype($file_path);
/* 文件入库 */
$data = array('store_id' => $this->store_id, 'file_type' => $file_type, 'file_size' => $file['size'], 'file_name' => $file['name'], 'file_path' => $file_path, 'belong' => $this->belong, 'item_id' => $this->item_id, 'add_time' => gmtime());
$file_id = $this->mod_uploadedfile->add($data);
if (!$file_id) {
$this->json_error('file_add_error');
exit;
}
if ($this->instance == 'goods_image') {
/* 生成缩略图 */
$thumbnail = dirname($file_path) . '/small_' . basename($file_path);
$bignail = dirname($file_path) . '/big_' . basename($file_path);
$middlenail = dirname($file_path) . '/middle_' . basename($file_path);
$smallnail = dirname($file_path) . '/little_' . basename($file_path);
make_thumb(ROOT_PATH . '/' . $file_path, ROOT_PATH . '/' . $bignail, 900, 900, THUMB_QUALITY);
//生成900*900的缩略图
make_thumb(ROOT_PATH . '/' . $file_path, ROOT_PATH . '/' . $middlenail, 420, 420, THUMB_QUALITY);
//生成420*420的缩略图
make_thumb(ROOT_PATH . '/' . $file_path, ROOT_PATH . '/' . $smallnail, 60, 60, THUMB_QUALITY);
//生成60*60的缩略图
make_thumb(ROOT_PATH . '/' . $file_path, ROOT_PATH . '/' . $thumbnail, THUMB_WIDTH, THUMB_HEIGHT, THUMB_QUALITY);
//生成170*170的缩略图
/* 更新商品相册 */
$data = array('goods_id' => $this->item_id, 'image_url' => $file_path, 'thumbnail' => $thumbnail, 'bignail' => $bignail, 'middlenail' => $middlenail, 'smallnail' => $smallnail, 'sort_order' => 255, 'file_id' => $file_id);
if (!$this->mod_goods_image->add($data)) {
$this->json_error($this->mod_goods_imaged->get_error());
return false;
}
$ret_info = array_merge($ret_info, array('thumbnail' => $thumbnail));
}
/* 返回客户端 */
$ret_info = array_merge($ret_info, array('file_id' => $file_id, 'file_path' => $file_path, 'instance' => $this->instance));
$this->json_result($ret_info);
}
示例2: uploadfile
function uploadfile($para)
{
import('image.func');
import('uploader.lib');
$uploader = new Uploader();
$uploader->allowed_type(IMAGE_FILE_TYPE);
$uploader->allowed_size(2097152);
// 2M
$files = $para;
//$_FILES['activity_banner'];
if ($files['error'] == UPLOAD_ERR_OK) {
/* 处理文件上传 */
$file = array('name' => $files['name'], 'type' => $files['type'], 'tmp_name' => $files['tmp_name'], 'size' => $files['size'], 'error' => $files['error']);
$uploader->addFile($file);
if (!$uploader->file_info()) {
$data = current($uploader->get_error());
$res = Lang::get($data['msg']);
$this->view_iframe();
echo "<script type='text/javascript'>alert('{$res}');</script>";
return false;
}
$uploader->root_dir(ROOT_PATH);
$dirname = 'data/files/mall/weixin';
$filename = $uploader->random_filename();
$file_path = $uploader->save($dirname, $filename);
}
return $file_path;
}
示例3: uploadedfile
function uploadedfile()
{
import('image.func');
import('uploader.lib');
$uploader = new Uploader();
$uploader->allowed_type(IMAGE_FILE_TYPE);
$uploader->allowed_size(2097152);
// 2M
$upload_mod =& m('uploadedfile');
$files = $_FILES['file'];
if ($files['error'] == UPLOAD_ERR_OK) {
/* 处理文件上传 */
$file = array('name' => $files['name'], 'type' => $files['type'], 'tmp_name' => $files['tmp_name'], 'size' => $files['size'], 'error' => $files['error']);
$uploader->addFile($file);
if (!$uploader->file_info()) {
$data = current($uploader->get_error());
$res = Lang::get($data['msg']);
$this->view_iframe();
echo "<script type='text/javascript'>alert('{$res}');</script>";
return false;
}
$uploader->root_dir(ROOT_PATH);
$dirname = '';
if ($this->belong == BELONG_ARTICLE) {
$dirname = 'data/files/mall/article';
}
$filename = $uploader->random_filename();
$file_path = $uploader->save($dirname, $filename);
/* 处理文件入库 */
$data = array('store_id' => $this->visitor->get('manage_store'), 'file_type' => $file['type'], 'file_size' => $file['size'], 'file_name' => $file['name'], 'file_path' => $file_path, 'belong' => $this->belong, 'item_id' => $this->id, 'add_time' => gmtime());
$file_id = $upload_mod->add($data);
if (!$file_id) {
$this->_error($uf_mod->get_error());
return false;
}
$data['file_id'] = $file_id;
$res = "{";
foreach ($data as $key => $val) {
$res .= "\"{$key}\":\"{$val}\",";
}
$res = substr($res, 0, strrpos($res, ','));
$res .= '}';
$this->view_iframe();
echo "<script type='text/javascript'>window.parent.add_uploadedfile({$res});</script>";
} elseif ($files['error'] == UPLOAD_ERR_NO_FILE) {
$res = Lang::get('file_empty');
$this->view_iframe();
echo "<script type='text/javascript'>alert('{$res}');</script>";
return false;
} else {
$res = Lang::get('sys_error');
$this->view_iframe();
echo "<script type='text/javascript'>alert('{$res}');</script>";
return false;
}
}
示例4: array
function _upload_file()
{
$ret_info = array();
// 返回到客户端的信息
$file = $_FILES['Filedata'];
if ($file['error'] == UPLOAD_ERR_NO_FILE) {
$this->json_error('no_upload_file');
exit;
}
import('uploader.lib');
// 导入上传类
import('image.func');
$uploader = new Uploader();
$uploader->allowed_type(IMAGE_FILE_TYPE);
// 限制文件类型
$uploader->allowed_size(2048000);
// 限制单个文件大小2M
$uploader->addFile($_FILES['Filedata']);
if (!$uploader->file_info()) {
$this->json_error($uploader->get_error());
exit;
}
/* 指定保存位置的根目录 */
$uploader->root_dir(ROOT_PATH);
$filename = $uploader->random_filename();
/* 上传 */
$file_path = $uploader->save($this->save_path, $filename);
// 保存到指定目录
if (!$file_path) {
$this->json_error('file_save_error');
exit;
}
$thumbnail = dirname($file_path) . '/small_' . basename($file_path);
make_thumb(ROOT_PATH . '/' . $file_path, ROOT_PATH . '/' . $thumbnail, 810, "", 85);
$file_type = $this->_return_mimetype($file_path);
/* 文件入库 */
$data = array('store_id' => 0, 'file_type' => $file_type, 'file_size' => $file['size'], 'file_name' => $file['name'], 'thumb_nail' => $thumbnail, 'file_path' => $file_path, 'belong' => $this->belong, 'item_id' => $this->item_id, 'add_time' => gmtime());
$file_id = $this->mod_uploadedfile->add($data);
if (!$file_id) {
$this->json_error('file_add_error');
return false;
}
/* 返回客户端 */
if ($this->belong == BELONG_CHECK) {
$ret_info = array('belong' => BELONG_CHECK, 'file_id' => $file_id, 'file_path' => $file_path);
} else {
$ret_info = array('file_id' => $file_id, 'file_path' => $file_path);
}
$this->json_result($ret_info);
}
示例5: import
function _upload_logo($brand_id)
{
$file = $_FILES['brand_logo'];
if ($file['error'] == UPLOAD_ERR_NO_FILE || !isset($_FILES['brand_logo'])) {
return '';
}
import('uploader.lib');
//导入上传类
$uploader = new Uploader();
$uploader->allowed_type(IMAGE_FILE_TYPE);
//限制文件类型
$uploader->addFile($_FILES['brand_logo']);
//上传logo
if (!$uploader->file_info()) {
$this->pop_warning($uploader->get_error());
if (ACT == 'brand_apply') {
$m_brand =& m('brand');
$m_brand->drop($brand_id);
}
return false;
}
/* 指定保存位置的根目录 */
$uploader->root_dir(ROOT_PATH);
/* 上传 */
if ($file_path = $uploader->save('data/files/mall/brand', $brand_id)) {
return $file_path;
} else {
return false;
}
}
示例6: import
/**
* 处理上传标志
*
* @author Hyber
* @param int $brand_id
* @return string
*/
function _upload_logo($brand_id)
{
$file = $_FILES['logo'];
if ($file['error'] == UPLOAD_ERR_NO_FILE) {
return '';
}
import('uploader.lib');
//导入上传类
$uploader = new Uploader();
$uploader->allowed_type(IMAGE_FILE_TYPE);
//限制文件类型
$uploader->addFile($_FILES['logo']);
//上传logo
if (!$uploader->file_info()) {
$this->show_warning($uploader->get_error(), 'go_back', 'index.php?app=brand&act=edit&id=' . $brand_id);
return false;
}
/* 指定保存位置的根目录 */
$uploader->root_dir(ROOT_PATH);
/* 上传 */
if ($file_path = $uploader->save('data/files/mall/brand', $brand_id)) {
return $file_path;
} else {
return false;
}
}
示例7: import
/**
* 上传商品图片
*
* @param int $goods_id
* @return bool
*/
function _upload_image($goods_id)
{
import('image.func');
import('uploader.lib');
$uploader = new Uploader();
$uploader->allowed_type(IMAGE_FILE_TYPE);
$uploader->allowed_size(SIZE_GOODS_IMAGE);
// 400KB
/* 取得剩余空间(单位:字节),false表示不限制 */
$store_mod =& m('store');
$settings = $store_mod->get_settings($this->_store_id);
$upload_mod =& m('uploadedfile');
$remain = $settings['space_limit'] > 0 ? $settings['space_limit'] * 1024 * 1024 - $upload_mod->get_file_size($this->_store_id) : false;
$files = $_FILES['new_file'];
foreach ($files['error'] as $key => $error) {
if ($error == UPLOAD_ERR_OK) {
/* 处理文件上传 */
$file = array('name' => $files['name'][$key], 'type' => $files['type'][$key], 'tmp_name' => $files['tmp_name'][$key], 'size' => $files['size'][$key], 'error' => $files['error'][$key]);
$uploader->addFile($file);
if (!$uploader->file_info()) {
$this->_error($uploader->get_error());
return false;
}
/* 判断能否上传 */
if ($remain !== false) {
if ($remain < $file['size']) {
$this->_error('space_limit_arrived');
return false;
} else {
$remain -= $file['size'];
}
}
$uploader->root_dir(ROOT_PATH);
$dirname = 'data/files/store_' . $this->_store_id . '/goods_' . time() % 200;
$filename = $uploader->random_filename();
$file_path = $uploader->save($dirname, $filename);
$thumbnail = dirname($file_path) . '/small_' . basename($file_path);
make_thumb(ROOT_PATH . '/' . $file_path, ROOT_PATH . '/' . $thumbnail, THUMB_WIDTH, THUMB_HEIGHT, THUMB_QUALITY);
/* 处理文件入库 */
$data = array('store_id' => $this->_store_id, 'file_type' => $file['type'], 'file_size' => $file['size'], 'file_name' => $file['name'], 'file_path' => $file_path, 'add_time' => gmtime());
$uf_mod =& m('uploadedfile');
$file_id = $uf_mod->add($data);
if (!$file_id) {
$this->_error($uf_mod->get_error());
return false;
}
/* 处理商品图片入库 */
$data = array('goods_id' => $goods_id, 'image_url' => $file_path, 'thumbnail' => $thumbnail, 'sort_order' => 255, 'file_id' => $file_id);
if (!$this->_image_mod->add($data)) {
$this->_error($this->_image_mod->get_error());
return false;
}
}
}
return true;
}
示例8: import
/**
* 上传默认商品图片、默认店铺标志、默认会员头像
*
* @author Hyber
* @param array $images
* @return array
*/
function _upload_images($images)
{
import('uploader.lib');
$image_urls = array();
foreach ($images as $image) {
$file = $_FILES[$image];
if ($file['error'] != UPLOAD_ERR_OK) {
continue;
}
$uploader = new Uploader();
$uploader->allowed_type(IMAGE_FILE_TYPE);
$uploader->addFile($file);
if ($uploader->file_info() === false) {
continue;
}
$uploader->root_dir(ROOT_PATH);
$image_urls[$image] = $uploader->save(UPLOAD_DIR, $image);
}
return $image_urls;
}
示例9: edit
function edit()
{
$id = empty($_GET['id']) ? 0 : intval($_GET['id']);
if (!IS_POST) {
/* 是否存在 */
$gcategory = $this->_gcategory_mod->get_info($id);
if (!$gcategory) {
$this->show_warning('gcategory_empty');
return;
}
$this->assign('gcategory', $gcategory);
/* 导入jQuery的表单验证插件 */
$this->import_resource(array('script' => 'jquery.plugins/jquery.validate.js'));
$this->assign('parents', $this->_get_options($id));
$this->display('gcategory.form.html');
} else {
if ($_FILES['rec_img']['name']) {
import('uploader.lib');
$data = array();
$file = $_FILES['rec_img'];
if ($file['error'] == UPLOAD_ERR_OK && $file != '') {
$uploader = new Uploader();
$uploader->allowed_type(IMAGE_FILE_TYPE);
$uploader->allowed_size(SIZE_STORE_LOGO);
// 20KB
$uploader->addFile($file);
if ($uploader->file_info() === false) {
$this->show_warning($uploader->get_error());
return false;
}
$uploader->root_dir(ROOT_PATH);
$rec_img = $uploader->save('data/files/gcategory_' . $id, 'rec_img');
}
} else {
$rec_img = $_POST['rec_imgs'];
}
$data = array('cate_name' => $_POST['cate_name'], 'parent_id' => $_POST['parent_id'], 'sort_order' => $_POST['sort_order'], 'if_show' => $_POST['if_show'], 'rec_img' => $rec_img);
/* 检查名称是否已存在 */
if (!$this->_gcategory_mod->unique(trim($data['cate_name']), $data['parent_id'], $id)) {
$this->show_warning('name_exist');
return;
}
/* 检查级数 */
$depth = $this->_gcategory_mod->get_depth($id);
$ancestor = $this->_gcategory_mod->get_ancestor($data['parent_id']);
if ($depth + count($ancestor) > MAX_LAYER) {
$this->show_warning('max_layer_error');
return;
}
/* 保存 */
$old_data = $this->_gcategory_mod->get_info($id);
// 保存前的数据
$rows = $this->_gcategory_mod->edit($id, $data);
if ($this->_gcategory_mod->has_error()) {
$this->show_warning($this->_gcategory_mod->get_error());
return;
}
/* 如果改变了上级分类,更新商品表中相应记录的cate_id_1到cate_id_4 */
if ($old_data['parent_id'] != $data['parent_id']) {
// 执行时间可能比较长,所以不限制了
_at(set_time_limit, 0);
// 清除商城商品分类缓存
$cache_server =& cache_server();
$cache_server->delete('goods_category_0');
// 取得当前分类的所有子孙分类(包括自身)
$cids = $this->_gcategory_mod->get_descendant_ids($id, true);
// 找出这些分类中有商品的分类
$mod_goods =& m('goods');
$mod_gcate =& $this->_gcategory_mod;
$sql = "SELECT DISTINCT cate_id FROM {$mod_goods->table} WHERE cate_id " . db_create_in($cids);
$cate_ids = $mod_goods->getCol($sql);
// 循环更新每个分类的cate_id_1到cate_id_4
foreach ($cate_ids as $cate_id) {
$cate_id_n = array(0, 0, 0, 0);
$ancestor = $mod_gcate->get_ancestor($cate_id, true);
for ($i = 0; $i < 4; $i++) {
isset($ancestor[$i]) && ($cate_id_n[$i] = $ancestor[$i]['cate_id']);
}
$sql = "UPDATE {$mod_goods->table} " . "SET cate_id_1 = '{$cate_id_n[0]}', cate_id_2 = '{$cate_id_n[1]}', cate_id_3 = '{$cate_id_n[2]}', cate_id_4 = '{$cate_id_n[3]}' " . "WHERE cate_id = '{$cate_id}'";
$mod_goods->db->query($sql);
}
}
$this->show_message('edit_ok', 'back_list', 'index.php?app=gcategory', 'edit_again', 'index.php?app=gcategory&act=edit&id=' . $id);
}
}
示例10: uploadedfile
function uploadedfile()
{
import('image.func');
import('uploader.lib');
$uploader = new Uploader();
$uploader->allowed_type(IMAGE_FILE_TYPE);
$uploader->allowed_size(SIZE_GOODS_IMAGE);
// 2M
$upload_mod =& m('uploadedfile');
/* 取得剩余空间(单位:字节),false表示不限制 */
$store_mod =& m('store');
$settings = $store_mod->get_settings($this->store_id);
$remain = $settings['space_limit'] > 0 ? $settings['space_limit'] * 1024 * 1024 - $upload_mod->get_file_size($this->store_id) : false;
$files = $_FILES['file'];
if ($files['error'] === UPLOAD_ERR_OK) {
/* 处理文件上传 */
$file = array('name' => $files['name'], 'type' => $files['type'], 'tmp_name' => $files['tmp_name'], 'size' => $files['size'], 'error' => $files['error']);
$uploader->addFile($file);
if (!$uploader->file_info()) {
$data = current($uploader->get_error());
$res = Lang::get($data['msg']);
$this->view_iframe();
echo "<script type='text/javascript'>alert('{$res}');</script>";
return false;
}
/* 判断能否上传 */
if ($remain !== false) {
if ($remain < $file['size']) {
$res = Lang::get('space_limit_arrived');
$this->view_iframe();
echo "<script type='text/javascript'>alert('{$res}');</script>";
return false;
}
}
$uploader->root_dir(ROOT_PATH);
$dirname = '';
if ($this->belong == BELONG_GOODS) {
$dirname = 'data/files/store_' . $this->visitor->get('manage_store') . '/goods_' . time() % 200;
} elseif ($this->belong == BELONG_STORE) {
$dirname = 'data/files/store_' . $this->visitor->get('manage_store') . '/other';
} elseif ($this->belong == BELONG_ARTICLE) {
$dirname = 'data/files/mall/store_' . $this->visitor->get('manage_store') . '/article';
}
$filename = $uploader->random_filename();
$file_path = $uploader->save($dirname, $filename);
/* 处理文件入库 */
$data = array('store_id' => $this->store_id, 'file_type' => $file['type'], 'file_size' => $file['size'], 'file_name' => $file['name'], 'file_path' => $file_path, 'belong' => $this->belong, 'item_id' => $this->id, 'add_time' => gmtime());
$file_id = $upload_mod->add($data);
if (!$file_id) {
$this->_error($uf_mod->get_error());
return false;
}
if ($this->instance == 'goods_image') {
/* 生成缩略图 */
$thumbnail = dirname($file_path) . '/small_' . basename($file_path);
make_thumb(ROOT_PATH . '/' . $file_path, ROOT_PATH . '/' . $thumbnail, THUMB_WIDTH, THUMB_HEIGHT, THUMB_QUALITY);
/* 更新商品相册 */
$mod_goods_image =& m('goodsimage');
$goods_image = array('goods_id' => $this->id, 'image_url' => $file_path, 'thumbnail' => $thumbnail, 'sort_order' => 255, 'file_id' => $file_id);
if (!$mod_goods_image->add($goods_image)) {
$this->_error($this->mod_goods_imaged->get_error());
return false;
}
$data['thumbnail'] = $thumbnail;
}
$data['instance'] = $this->instance;
$data['file_id'] = $file_id;
$res = "{";
foreach ($data as $key => $val) {
$res .= "\"{$key}\":\"{$val}\",";
}
$res = substr($res, 0, strrpos($res, ','));
$res .= '}';
$this->view_iframe();
echo "<script type='text/javascript'>window.parent.add_uploadedfile({$res});</script>";
} elseif ($files['error'] == UPLOAD_ERR_NO_FILE) {
$res = Lang::get('file_empty');
$this->view_iframe();
echo "<script type='text/javascript'>alert('{$res}');</script>";
return false;
} else {
$res = Lang::get('sys_error');
$this->view_iframe();
echo "<script type='text/javascript'>alert('{$res}');</script>";
return false;
}
}
示例11: import
/**
* 上传文件
*
*/
function _upload_files()
{
import('uploader.lib');
$data = array();
/* store_logo */
$file = $_FILES['store_logo'];
if ($file['error'] == UPLOAD_ERR_OK && $file != '') {
$uploader = new Uploader();
$uploader->allowed_type(IMAGE_FILE_TYPE);
//$uploader->allowed_size(SIZE_STORE_LOGO); // 20KB
$uploader->addFile($file);
if ($uploader->file_info() === false) {
$this->show_warning($uploader->get_error());
exit;
}
$uploader->root_dir(ROOT_PATH);
$data['store_logo'] = $uploader->save('data/files/store_' . $this->_store_id . '/other', 'store_logo');
}
/* store_banner */
$file = $_FILES['store_banner'];
if ($file['error'] == UPLOAD_ERR_OK && $file != '') {
$uploader = new Uploader();
$uploader->allowed_type(IMAGE_FILE_TYPE);
$uploader->allowed_size(SIZE_STORE_BANNER);
// 200KB
$uploader->addFile($file);
if ($uploader->file_info() === false) {
$this->show_warning($uploader->get_error());
return false;
}
$uploader->root_dir(ROOT_PATH);
$data['store_banner'] = $uploader->save('data/files/store_' . $this->_store_id . '/other', 'store_banner');
}
return $data;
}
示例12: import
/**
* 上传头像
*
* @param int $user_id
* @return mix false表示上传失败,空串表示没有上传,string表示上传文件地址
*/
function _upload_portrait($user_id)
{
$file = $_FILES['portrait'];
if ($file['error'] != UPLOAD_ERR_OK) {
return '';
}
import('uploader.lib');
$uploader = new Uploader();
$uploader->allowed_type(IMAGE_FILE_TYPE);
$uploader->addFile($file);
if ($uploader->file_info() === false) {
$this->show_warning($uploader->get_error(), 'go_back', 'index.php?app=member&act=profile');
return false;
}
$uploader->root_dir(ROOT_PATH);
return $uploader->save('data/files/mall/portrait/' . ceil($user_id / 500), $user_id);
}
示例13: import
/**
* 处理上传标志
*
* @author psmoban.com
* @param int $coupon_id
* @return string
*/
function _upload_image($coupon_id)
{
$file = $_FILES['coupon_image'];
if ($file['error'] == UPLOAD_ERR_NO_FILE) {
return '';
}
import('uploader.lib');
//导入上传类
$uploader = new Uploader();
$uploader->allowed_type(IMAGE_FILE_TYPE);
//限制文件类型
$uploader->addFile($_FILES['coupon_image']);
//上传image
if (!$uploader->file_info()) {
$this->show_warning($uploader->get_error());
return false;
}
/* 指定保存位置的根目录 */
$uploader->root_dir(ROOT_PATH);
/* 上传 */
if ($file_path = $uploader->save('data/files/mall/coupon', $coupon_id)) {
return $file_path;
} else {
return false;
}
}
示例14: import
function _upload_image($store_id)
{
import('uploader.lib');
$uploader = new Uploader();
$uploader->allowed_type(IMAGE_FILE_TYPE);
$uploader->allowed_size(SIZE_STORE_CERT);
// 400KB
$data = array();
for ($i = 1; $i <= 3; $i++) {
$file = $_FILES['image_' . $i];
if ($file['error'] == UPLOAD_ERR_OK) {
if (empty($file)) {
continue;
}
$uploader->addFile($file);
if (!$uploader->file_info()) {
$this->_error($uploader->get_error());
return false;
}
$uploader->root_dir(ROOT_PATH);
$dirname = 'data/files/mall/application';
$filename = 'store_' . $store_id . '_' . $i;
$data['image_' . $i] = $uploader->save($dirname, $filename);
}
}
return $data;
}
示例15: uploadedfile
function uploadedfile()
{
import('image.func');
import('uploader.lib');
$uploader = new Uploader();
$uploader->allowed_type(IMAGE_FILE_TYPE);
$uploader->allowed_size(SIZE_GOODS_IMAGE);
// 2M
$files = $_FILES['file'];
if ($files['error'] === UPLOAD_ERR_OK) {
/* 处理文件上传 */
$file = array('name' => $files['name'], 'type' => $files['type'], 'tmp_name' => $files['tmp_name'], 'size' => $files['size'], 'error' => $files['error']);
$file['tmp_name'] = str_replace("\\\\", "\\", $file['tmp_name']);
/* 推荐图片,判断图片尺寸是否符合要求 */
if ($this->instance == 'recommend_image') {
$size = getimagesize($file['tmp_name']);
$width = $size[0];
$height = $size[1];
if ($width != 1080 || $height != 540) {
$res = Lang::get('must_size');
$this->view_iframe();
echo "<script type='text/javascript'>alert('{$res}');</script>";
return false;
}
/* 取到商品关联的图片 */
$uploadedfiles = $this->uploaded_files_mod->find(array('fields' => "f.*,goods_image.*", 'conditions' => "store_id=" . $this->store_id . " AND belong=" . BELONG_GOODS . " AND item_id=" . $this->id, 'join' => 'belongs_to_goodsimage', 'order' => 'add_time ASC'));
foreach ($uploadedfiles as $key => $uploadedfile) {
if ($uploadedfile['instance'] == 'recommend_image') {
//删除原图片文件
@unlink($uploadedfile['file_path']);
//删除原图片库存记录
$this->uploaded_files_mod->drop($uploadedfile['file_id']);
}
}
}
$uploader->addFile($file);
if (!$uploader->file_info()) {
$data = current($uploader->get_error());
$res = Lang::get($data['msg']);
$this->view_iframe();
echo "<script type='text/javascript'>alert('{$res}');</script>";
return false;
}
/* 判断能否上传 */
$uploader->root_dir(ROOT_PATH);
$dirname = '';
if ($this->belong == BELONG_GOODS) {
$dirname = 'data/files/store_' . $this->visitor->get('manage_store') . '/goods_' . time() % 200;
} elseif ($this->belong == BELONG_STORE) {
$dirname = 'data/files/store_' . $this->visitor->get('manage_store') . '/other';
} elseif ($this->belong == BELONG_ARTICLE) {
$dirname = 'data/files/store_' . $this->visitor->get('manage_store') . '/article';
}
$filename = $uploader->random_filename();
$file_path = $uploader->save($dirname, $filename);
/* 处理文件入库 */
$data = array('store_id' => $this->store_id, 'file_type' => $file['type'], 'file_size' => $file['size'], 'file_name' => $file['name'], 'file_path' => $file_path, 'belong' => $this->belong, 'item_id' => $this->id, 'add_time' => gmtime(), 'instance' => $this->instance);
$file_id = $this->uploaded_files_mod->add($data);
if (!$file_id) {
$this->_error($uf_mod->get_error());
return false;
}
if ($this->instance == 'goods_image') {
/* 生成缩略图 */
$thumbnail = dirname($file_path) . '/small_' . basename($file_path);
$bignail = dirname($file_path) . '/big_' . basename($file_path);
$middlenail = dirname($file_path) . '/middle_' . basename($file_path);
$smallnail = dirname($file_path) . '/little_' . basename($file_path);
make_thumb(ROOT_PATH . '/' . $file_path, ROOT_PATH . '/' . $bignail, 900, 900, THUMB_QUALITY);
//生成900*900的缩略图
make_thumb(ROOT_PATH . '/' . $file_path, ROOT_PATH . '/' . $middlenail, 420, 420, THUMB_QUALITY);
//生成420*420的缩略图
make_thumb(ROOT_PATH . '/' . $file_path, ROOT_PATH . '/' . $smallnail, 60, 60, THUMB_QUALITY);
//生成60*60的缩略图
make_thumb(ROOT_PATH . '/' . $file_path, ROOT_PATH . '/' . $thumbnail, THUMB_WIDTH, THUMB_HEIGHT, THUMB_QUALITY);
//生成170*170的缩略图
/* 更新商品相册 */
$mod_goods_image =& m('goodsimage');
$goods_image = array('goods_id' => $this->id, 'image_url' => $file_path, 'thumbnail' => $thumbnail, 'bignail' => $bignail, 'middlenail' => $middlenail, 'smallnail' => $smallnail, 'sort_order' => 255, 'file_id' => $file_id);
if (!$mod_goods_image->add($goods_image)) {
$this->_error($this->mod_goods_imaged->get_error());
return false;
}
$data['thumbnail'] = $thumbnail;
}
$data['instance'] = $this->instance;
$data['file_id'] = $file_id;
$res = "{";
foreach ($data as $key => $val) {
$res .= "\"{$key}\":\"{$val}\",";
}
$res = substr($res, 0, strrpos($res, ','));
$res .= '}';
$this->view_iframe();
echo "<script type='text/javascript'>window.parent.add_uploadedfile({$res});</script>";
} elseif ($files['error'] == UPLOAD_ERR_NO_FILE) {
$res = Lang::get('file_empty');
$this->view_iframe();
echo "<script type='text/javascript'>alert('{$res}');</script>";
return false;
//.........这里部分代码省略.........