DeDeBIZ程序开发实现API接口调用织梦会员头像
在DeDeBIZ、DeDeCMS、织梦BIZ、织梦CMS中,能实现API接口调用会员头像。
在织梦首页、列表页、内容页、标签页、搜索页、乃至整个织梦模板中,都能使用标签调用会员头像。为此,我想到了,使用API接口的方式,像QQ号能调用QQ头像那样的接口。
好了,你想实现吗,直接看展示效果吧。
调用标签
/user/image.php?ui=admin
/user/image.php?ui=admin&nk=100
/user/image.php?ui=admin&ng=200
/user/image.php?ui=admin&nk=300&ng=300
注意:支持4种调用方式,你喜欢哪种,那就用哪种。
标签说明
?ui=admin 默认图片大小
?ui=admin&nk=100 等比例,图片宽100px、图片高100px
?ui=admin&ng=200 等比例,图片宽200px、图片高200px
?ui=admin&nk=300&ng=300 指定宽高,图片宽300px、图片高300px
注意:参数值,不是固定的。比如,你可以任意指定图片宽高。
参数说明
ui 登录名,必须写,不然找不到用户
nk 图片宽,非必须,只设置宽,不设置高,就是图片等比例输出。
ng 图片高,非必须,设置宽,设置高,那就是固定图片大小输出。
注意:不设置图片宽,不设置图片高,就是默认的图片大小输出。
教程开始
在 DeDeBIZ 中使用:在 user 目录下,新建一个 image.php 文件,代码如下
<?php /** * @version $id:image.php 8:38 2024年8月6日 NiDeCMS $ * @package NiDeCMS.User * @copyright Copyright (c) 2024 DedeBIZ.COM * @license GNU GPL v2 http://nidecms.com/home * @link http://nidecms.com/ */ error_reporting(0); $userid = isset($_REQUEST['ui']) ? $_REQUEST['ui'] : '';//登录名 $widtnk = isset($_REQUEST['nk']) ? $_REQUEST['nk'] : '';//图片宽 $heigng = isset($_REQUEST['ng']) ? $_REQUEST['ng'] : '';//图片高 if (empty($userid)){ exit('参数不存在!'); } require_once(dirname(__FILE__).'/../system/common.inc.php'); //织梦二次开发获取会员头像 $row = $dsql->GetOne("SELECT face,sex,userid FROM `#@__member` WHERE userid = '{$userid}'"); if ($row['userid'] == ''){ exit('用户不存在!'); } if ($row['face'] == ''){ if ($row['sex']=="男"){ $facea = '/ueditor/asking/img/dfboy.png'; } elseif ($row['sex']=="女"){ $facea = '/ueditor/asking/img/dfgirl.png'; } else { $facea = '/ueditor/asking/img/face.png'; } } else { $facea = str_replace($GLOBALS['cfg_basehost'],'/', $row['face']); } $imagePath = dirname(__FILE__).'/..'.str_replace('//','/', $facea); // 检查文件是否存在 if (!file_exists($imagePath)) { exit('图片文件不存在'); } if ($widtnk == '' && $heigng == ''){ header('Content-Type: image/jpeg'); $fp = fopen($imagePath,'rb'); fpassthru($fp); exit(); } // 尝试根据文件扩展名创建图像资源 $imageInfo = getimagesize($imagePath); $imageType = $imageInfo[2]; // 2 是索引,用于获取图片类型 switch ($imageType) { case IMAGETYPE_GIF: $image = imagecreatefromgif($imagePath); break; case IMAGETYPE_JPEG: $image = imagecreatefromjpeg($imagePath); break; case IMAGETYPE_PNG: $image = imagecreatefrompng($imagePath); break; default: break; } // 设置新的宽度和高度 if($widtnk == ''){ $newWidth = $heigng; $newHeight = $heigng; } elseif ($heigng == ''){ $newWidth = $widtnk; $newHeight = $widtnk; } else { $newWidth = $widtnk; $newHeight = $heigng; } // 创建新的图像资源 $newImage = imagecreatetruecolor($newWidth, $newHeight); // 复制并调整大小 imagecopyresampled($newImage, $image, 0, 0, 0, 0, $newWidth, $newHeight, imagesx($image), imagesy($image)); header('Content-Type: image/jpeg'); // 输出图像到浏览器 imagejpeg($newImage); // 释放内存 imagedestroy($image); imagedestroy($newImage); ?>
这个代码,是在 DeDeBIZ 中测试的。所以,在 DeDeBIZ 中直接使用,但是,在 DeDeCMS 中,只需要改两个地方而已。下面,是在 DeDeCMS 中使用的修改方法。
1、将上面的文件剪切到 member 目录。
2、改一句代码就行了,看到第 16 行
require_once(dirname(__FILE__).'/../system/common.inc.php');
改为
require_once(dirname(__FILE__).'/../include/common.inc.php');
这样就行了。
无需登录,使用接口的方式,优雅的接口,适合高配置、高需求、高追求的站长。
登录后方可回帖
织梦修改全站.html文档的默认命名规则
用织梦做的网站,基本都是 .html 文件后缀的,有的站长就在想,怎么样改为其它后缀的形式,下面,小编附上修改方法。 打开 /include/common.inc.php 搜索 $art_shortname=$cfg_df_ext=.html; 改为 $art_shortname=$cfg_df_ext=.sh...
snh102 • 2024-10-06 • 最后回复来自 snh103织梦CMS友情链接调用标签的高级玩法
你是否,还在为 {dede:flinktype type=dedecms}{dede:flink/}{/dede:flinktype} 织梦调用标签发愁。或者是{dede:flink}[field:link/]{/dede:flink} 这种调用方式惆怅。 织梦程序,以上两种调用方式,这种固定式、框架式、自由度低、...
snh102 • 2024-06-29DeDeBIZ织梦动态TAG标签改成拼音伪静态的方法
DeDeBIZ有生成静态TAG标签功能,默认却是动态+ID链接版,生成后还有N个目录版。 在上一篇《 DeDeBIZ/DeDeV6:TAG标签改为拼音ID静态版 》DeDeV6织梦教程中,我将DeDeBIZ的TAG标签改为拼音ID静态版。但是,有站长说,...
snh102 • 2024-07-17 • 最后回复来自 snh102论坛首页新增最新、最热、热评、收藏等帖子排序功能
「功能上新」又有新功能,在论坛首页,支持帖子分页排序啦! 新增最新帖子、最热帖子、热评帖子、收藏帖子等支持帖子排序分页功能。 同时,还写入网站地图!哈哈,网站每天都在改版,怕你找不到,...
snh102 • 2024-08-19DeDeBIZ织梦自动审核文档+织梦自动定时审核生成插件
织梦CMS定时审核生成织梦插件下载。实现挂机、定时、自动、审核、生成文档。 《 织梦自动发布和自动更新文章 》不能像它自动发布、自动更新文档的都不好用。 曾经春哥开发的,春哥开发的必属精品。织...
snh102 • 2024-07-16 • 最后回复来自 snh102织梦列表分页限制只生成前10页的方法
DeDeCMS、DeDeBIZ、DeDeV6、DeDeCMSV6等都是织梦程序,织梦标签、织梦教程都是通用的。想列表分页只生成前10页,或者是前50页。这样的做法,可以加快后台生成速度,同时也能防止网站被采集。好了,废话不多说...
snh102 • 2024-04-30织梦网站后台被收录的解决办法
有坛友问我呀。这个《 史诗级织梦安全设置教程 》是怎么做的,她说织梦后台被收录了。我想了下,发现我以前写的代码,写的有点幼稚,还有点特别的搞笑,不仅麻烦还没有作用。 未按教程操作之前:人...
snh102 • 2024-08-02DeDeBIZ开发流量统计表增加蜘蛛统计
网站统计工具,蜘蛛统计工具,不如自己织梦后台增加个蜘蛛统计。 DeDeBIZ织梦得德就有流量统计表,增加蜘蛛统计也并不是什么难事。 展示效果 特别注意 本插件基于 Dedev6.3.2-develop开发版 测试的,如果你的...
snh102 • 2024-08-11 • 最后回复来自 snh102DeDeBIZ一键切换全站动静态织梦插件
玩织梦,在于折腾,那先安装《 全站动静态 》够你折腾啦; 想鼓捣,用户体验,那就是换《 百度编辑器 》主打用户体验; 无论是开发者,或者是使用者,少了它们的话,只是个玩织梦的孩子。 废话少叙,...
snh102 • 2024-07-17 • 最后回复来自 dage999DeDeBIZ自定义表单伪静态设置教程
自定义表单已改名,再将 diy.php 改为伪静态版。啥都不用改,只加伪静态规则就好啦! Nginx伪静态规则 RewriteEngineonRewriteRule^diy.html$apps/diy.php Apache伪静态规则 rewrite^/diy.html$/apps/diy.php; 你看,TA们是不是,都是...
snh102 • 2024-08-09Nginx配置文件网站日志切割方法
开启网站日志后,烦恼Nginx默认是不切割日志的,网站运行久了,就会生成大量日志。下面,小编教大家,让Nginx自动切割日志,每天都是新的网站日志。 教程开始 打开宝塔面板,管理网站,看到配置文件,...
snh102 • 2024-07-02 • 最后回复来自 snh102DeDeBIZ织梦修改data目录名的方法
最让人发笑的事情,莫过于村里才通网,亦或是使用的DeDeBIZ被DeDeCMS起诉。 在DeDeBIZ程序中,data缓存目录尚未改名。下面,小编教坛友把data目录改名了。 视频教程 看《 织梦CMS内容管理系统:最新织梦安全设...
snh102 • 2024-08-08DeDeBIZ得德修改会员密码的方法
在大多数情况下,织梦站长都不喜欢折腾,一般都是在织梦后台修改会员密码。 但是,编辑、修改、保存、确定、返回、这些按钮啊,真没有SQL命令工具好用。 下面,我给大家整个,用SQL命令工具修改的方...
snh102 • 2024-08-21DeDeBIZ全站启用伪静态使用教程
DeDeBIZ非常完美了,这个DeDeV6程序啊,DeDeBIZ系统内置好伪静态啦!我们只要点击开启就行了,但是开启以后,确实是有BUG君的,有些细节嘛...还得需要优化下啦! 效果展示 设置伪静态后,你的电脑站url会像如...
snh102 • 2024-07-13织梦修改templets目录名的方法
修改templets目录名,可以提高织梦模板安全、织梦系统安全、织梦网站安全等等。好了,废话少说,直接上教程。 一、打开 /include/common.inc.php 搜索 /templets 改为 /templetg 有2处,就随便改改,把 templets 目录改为...
snh102 • 2024-04-27DeDeBIZ会员登陆不了的解决办法
在博客写过: DeDeBIZ登录成功后,又返回登录界面的解决办法。 DeDeBIZ历史版本下载。 就是将 v6.2.12 版的 /system/helpers/cookie.helper.php 文件与新版 V6.3.0 文件直接覆盖。 OK了,文件替换,问题解决。你再登录,就...
snh102 • 2024-08-17DedeBIZ更新标签时,取消TAG标签会自动加点击量的方法
DedeBIZ系统呀,虽然TAG标签是静态的,但是每次生成更新标签时,每个TAG标签都会自动加1点击量。经测试,确实,完美+1,是BUG啊!绝对是BUG了!下面附上修复方法。 打开 /system/archive/taglist.class.php 搜索 if($...
snh102 • 2024-04-29DeDeBIZ在channelartlist中嵌套channel时,子栏目currentstyle高亮无效的解决办法
DeDeBIZ中,织梦dede:channel指定typeid子栏目调用currentstyle高亮无效的解决教程。 但在channelartlist中嵌套channel时,dede:channel指定typeid时currentstyle高亮会无效。 调用代码 {dede:channelartlisttypeid=toprow=4currentstyle=display:...
snh102 • 2024-08-15自动签到利器:没有什么是一段代码解决不了的
前几天上线的《 签到功能 》效果不是很理想。都是潜水大师,懒得连点击签到都不想。 为此,我只能用代码解决,用代码实现自动签到。只要打开织梦论坛,就实现自动签到了。 说到底呀,还是为了大数据...
snh102 • 2024-08-21
友情提示:看到第24行、26行、28行代码,当会员未上传头像时,是根据性别男、女、保密等判断,所以,你要准备这三张图片,路径改为自己的就行了。