微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

dedecms织梦图集上传图片自动获取图片名做注释

Dedecms织梦图集上传图片认是要手动填写注释的,有时我们做好了产品图和图片名称,为了方便想让上传图片自动获取图片名做注释,那下面的教程就非常有用了。 

1、打开 \dede\swfupload.PHP 找到(注意,dede为后台的目录,请自行登录自己所在后台目录修改

PHP">echo "FILEID:".$_SESSION['fileid'];
在它的上面加入
PHP">$file_snames = explode('.',$Filename);
$file_filename = $file_snames[count($file_snames)-2];
$_SESSION['file_filename'][$_SESSION['fileid']] = $file_filename;
继续找到(注:因为swfupload是基于UTF-8编码、所以这里修改的地方需要有个转码判断,统一转为UTF-8,接收到的文件名称才不会乱码)
PHP">/************************
//删除指定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 "注释:";
    exit(0);
}

2、打开 \dede\album_add.PHP 找到

PHP">$imginfo =  !empty(${'picinfook'.$k}) ? ${'picinfook'.$k} : '';

改成

PHP">$imginfo =  !empty(${'picinfook'.$k}) ? ${'picinfook'.$k} : $_SESSION['file_filename'][$k]; 

3、打开 \dede\album_edit.PHP 找到

PHP">$imginfo =  !empty(${'picinfook'.$k}) ? ${'picinfook'.$k} : '';

改成

PHP">$imginfo =  !empty(${'picinfook'.$k}) ? ${'picinfook'.$k} : $_SESSION['file_filename'][$k];

如果系统是GBK编码格式 打开album_add.PHP找到

PHP">$imgurls = addslashes($imgurls);

改为

PHP">$imgurls = addslashes(mb_convert_encoding($imgurls,'GB2312','UTF-8'));

normal;">打开album_edit.PHP找到上面修改过的

PHP">$imginfo =  !empty(${'picinfook'.$k}) ? ${'picinfook'.$k} : $_SESSION['file_filename'][$k];
改为

PHP">$imginfo =  mb_convert_encoding(!empty(${'picinfook'.$k}) ? ${'picinfook'.$k} : $_SESSION['file_filename'][$k],'UTF-8');

4、打开 \dede\js\handlers.js 找到

PHP">newImgDiv.innerHTML += '
';

改成

PHP">newImgDiv.innerHTML += '
'; var picinfo = document.getElementById('picinfo'+albImg); var myajax = new DedeAjax(picinfo,false,"",""); myajax.SendGet2('swfupload.PHP?dopost=thumbalt&id='+pid); DedeXHTTP = null;
完成。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐