Discuz!开发之附件动态链接生成与解析
来源:互联网 发布:2013excel不能粘贴数据 编辑:程序博客网 时间:2024/06/06 17:14
熟悉discuz!的朋友应该知道,discuz!的附件在前台显示的都是动态的下载链接,例如:
http://localhost/forum.php?mod=attachment&aid=MTc2NTF8OTVkOTMyODB8MTQ5MTk4MDg1MHwxfDMyMQ%3D%3D
从上面我们看到,参数aid并不是附件表中的aid,难道此次有加密?
我们来研究一下这个aid参数的生成方法:
\source\function\function_core.php
function aidencode($aid, $type = 0, $tid = 0) {global $_G;$s = !$type ? $aid.'|'.substr(md5($aid.md5($_G['config']['security']['authkey']).TIMESTAMP.$_G['uid']), 0, 8).'|'.TIMESTAMP.'|'.$_G['uid'].'|'.$tid : $aid.'|'.md5($aid.md5($_G['config']['security']['authkey']).TIMESTAMP).'|'.TIMESTAMP;return rawurlencode(base64_encode($s));}上面链接中的aid参数就是把该附件的aid、论坛安全码、时间、我的ID号、主题ID等信息字符串拼接之后使用了base64加密而来,因此我们的就很容易解析这个aid参数,可参考:
\source\module\forum\forum_attachment.php
@list($_GET['aid'], $_GET['k'], $_GET['t'], $_GET['uid'], $_GET['tableid']) = daddslashes(explode('|', base64_decode($_GET['aid'])));
0 0
- Discuz!开发之附件动态链接生成与解析
- Discuz!开发之模板解析与缓存机制
- Linux 静态链接库与动态链接库之二:动态链接库生成及使用
- Linux 静态链接库与动态链接库之二:动态链接库生成
- Linux 静态链接库与动态链接库之二:动态链接库生成
- Discuz开发之function_core常用函数解析
- Discuz!开发之会员登录流程解析
- 动态链接库的生成与调用
- Discuz!开发之网站后台表单生成函数showsetting()详情
- Discuz!开发之后台面包屑导航生成函数shownav()介绍
- Android开发之二维码的生成与解析
- iOS开发之JSON格式数据的生成与解析
- Discuz!开发之私信、提醒信息发送函数sendpm()解析
- Discuz!开发之主题高亮字段highlight解析
- Discuz!开发之IP地址的解析方法
- Discuz!开发之发帖回帖@会员功能代码解析
- linux编译生成动态链接库与静态链接库
- 链接器之静态链接与动态链接
- redis无法远程调用
- NavigationView实现抽屉式菜单,Sub item的选中
- APP测试学习之造轮子--基于MINA框架的NIO
- 控制反转/依赖注入/依赖查找
- linux自动化编译之Jenkins安装
- Discuz!开发之附件动态链接生成与解析
- java设计模式--访问者模式 Visitor
- Data binding的使用(二)-----事件的绑定监听
- Java基础 静态块、非静态块、构造函数的执行顺序
- 面试基础知识整理 —— 二叉搜索树
- Android 获取设备号、IMEI、型号
- 纹理坐标和顶点坐标
- jFinal 事物控制回滚(简单)
- Cling 源码解析