找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 84|回复: 0

[cms教程] dedecms织梦图集上传图片自动获取图片名做注释

[复制链接]

该用户从未签到

发表于 2019-3-14 12:53:07 | 显示全部楼层 |阅读模式

您需要 登录 才可以下载或查看,没有账号?立即注册

×
dedecms织梦图集上传图片默认是要手动填写注释的,有时我们做好了产品图和图片名称,为了方便想让上传图片后自动获取图片名做注释,那下面的教程就非常有用了。
         
        1、打开 \dede\swfupload.php 找到(注意,dede为默认后台的目录,请自行登录自己所在后台目录修改)
         
        echo "FILEID:".$_SESSION['fileid',;
        在它的上面加入
        $file_snames = explode('.', $Filename);
        $file_filename = $file_snames[count($file_snames)-2,;
        $_SESSION['file_filename',[$_SESSION['fileid',, = $file_filename;
        继续找到(注:因为swfupload是基于UTF-8编码、所以这里修改的地方需要有个转码判断,统一转为UTF-8,接收到的文件名称才不会乱码)
        /************************
        //删除指定ID的图片
        *************************/
        在下面加入如下代码:
        /************************
        //生成注释
        *************************/
        else if($dopost=='thumbalt')
        {
            if( empty($id) )
            {
                header('HTTP/1.1 500 Internal Server Error');
                echo 'No ID';
                exit(0);
            }
            if (!is_array($_SESSION['file_filename',) || !isset($_SESSION['file_filename',[$id,))
            {
                header('HTTP/1.1 404 Not found');
                exit(0);
            }
                 if($cfg_soft_lang=='utf-8') $file_filename = $_SESSION['file_filename',[$id,;
                 else $file_filename = iconv( 'UTF-8', 'gb2312//IGNORE' , $_SESSION['file_filename',[$id,);
                 echo "注释:[i,";
            exit(0);
        }
        2、打开 \dede\album_add.php 找到
         
        $imginfo =  !empty(${'picinfook'.$k}) ? ${'picinfook'.$k} : '';
        改成
         
        $imginfo =  !empty(${'picinfook'.$k}) ? ${'picinfook'.$k} : $_SESSION['file_filename',[$k,;
        3、打开 \dede\album_edit.php 找到
         
        $imginfo =  !empty(${'picinfook'.$k}) ? ${'picinfook'.$k} : '';
        改成
         
        $imginfo =  !empty(${'picinfook'.$k}) ? ${'picinfook'.$k} : $_SESSION['file_filename',[$k,;
        如果系统是GBK编码格式 打开album_add.php找到
         
        $imgurls = addslashes($imgurls);
        改为
         
        $imgurls = addslashes(mb_convert_encoding($imgurls,'GB2312','UTF-8'));
        打开album_edit.php找到上面修改过的
         
        $imginfo =  !empty(${'picinfook'.$k}) ? ${'picinfook'.$k} : $_SESSION['file_filename',[$k,;
        改为
        $imginfo =  mb_convert_encoding(!empty(${'picinfook'.$k}) ? ${'picinfook'.$k} : $_SESSION['file_filename',[$k,,'GB2312','UTF-8');
        4、打开 \dede\js\handlers.js 找到
         
        newImgDiv.innerHTML += '注释:[i,';
        改成
         
        newImgDiv.innerHTML += '';
        var picinfo = document.getElementById('picinfo'+albImg);
        var myajax = new DedeAjax(picinfo,false,false,"","","");
        myajax.SendGet2('swfupload.php?dopost=thumbalt&id='+pid);
        DedeXHTTP = null;
        完成。
回复

使用道具 举报

网站地图|页面地图|文字地图|Archiver|手机版|小黑屋|找资源 |网站地图

GMT+8, 2024-9-28 21:28

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表