dedecms自定义函数(二次开发)
一些功能可能dedecms没有,这个时候可以自己写一些函数:
dedecms的数据库操作类,非常实用,在二次开发中尤其重要,这个数据库操作类说明算是奉献给大家的小礼物了。
引入common.inc.php文件
require_once (dirname(__FILE__) . "/include/common.inc.php")
获取一条记录的内容
$row = $dsql->GetOne("Select * From dede_* where id = $aid");
echo $row['id'];
将查询获取总数输出
$row = $dsql->GetOne("select count(*) as dd where typeid = $typeid");
echo $row['dd'];//输出总数
将查询的若干条记录输出
$sql = "Select * from dede_*";
$dsql->SetQuery($sql);//将SQL查询语句格式化
$dsql->Execute();//执行SQL操作
//通过循环输出执行查询中的结果
while($row = $dsql->GetArray()){
echo $row['id'];
echo $row['title'];
}
//或者采取这种方式输出内容 while($row = $dsql->GetObject()){
echo $row->id;
echo $row->Title;
}
将查询的若干条记录输出dedecms5
$dsql->SetQuery("Select id,typename From `#@__arctype` where reid=0 And channeltype=1 And ishidden=0 And ispart<>2 order by sortrank");
$dsql->Execute();
while($row=$dsql->GetObject())
{
$channellist .= "<a href='wap.php?action=list&id={$row->id}'>{$row->typename}</a> ";
echo $row->id;
}
插入一条记录
$sql = "
INSERT INTO `dede_member_flink`(mid,title,url,linktype,imgurl,imgwidth,imgheight)
VALUES(".$cfg_ml->M_ID.",'$title','$url','$linktype','$imgurl','$imgwidth','$imgheight');";//插入记录数据库
$dsql->SetQuery($sql);//格式化查询语句
$dsql->ExecNoneQuery();//执行SQL操作
经实践证明,上面的语句不能正常插入数据库,下面是正确的语句
$sql = "
INSERT INTO `dede_member_flink`(mid,title,url,linktype,imgurl,imgwidth,imgheight)
VALUES(".$cfg_ml->M_ID.",'$title','$url','$linktype','$imgurl','$imgwidth','$imgheight');";//插入记录数据库
$dsql->ExecuteNoneQuery($sql);//执行SQL操作
$gid = $dsql->GetLastID();//获取刚刚插入的id
删除一条记录
1
2
3
4
5
|
$sql = "Delete From dede_member_flink where aid='$aid' And mid='" . $cfg_ml ->M_ID. "';" ; $dsql ->SetQuery( $sql ); $dsql ->ExecNoneQuery(); //或者使用简化模式 $dsql ->ExecNoneQuery( "Delete From dede_member_flink where aid='$aid' And mid='" . $cfg_ml ->M_ID. "';" ); |
更新一条记录
1
2
3
4
5
6
7
|
$upquery = " Update dede_member_flink set title= '$title' ,url= '$url' ,linktype= '$linktype' , imgurl= '$imgurl' ,imgwidth= '$imgwidth' ,imgheight= '$imgheight' where aid= '$aid' And mid= '".$cfg_ml->M_ID."' ; "; $rs = $dsql ->ExecuteNoneQuery( $upquery ); |
判断获取数据库内容的常用方法
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
$row = $dsql ->GetOne( "Select * From dede_moneycard_type where tid={$pid}" ); if (! is_array ( $row )){ echo "失败" ; exit (); } ///////////////////////////// $upquery = " Update dede_member_flink set title= '$title' ,url= '$url' ,linktype= '$linktype' , imgurl= '$imgurl' ,imgwidth= '$imgwidth' ,imgheight= '$imgheight' where aid= '$aid' And mid= '".$cfg_ml->M_ID."' ; "; $rs = $dsql ->ExecuteNoneQuery( $upquery ); if ( $rs ){ echo "成功" ; } else { echo "失败" ; } |
获取总数
1
2
3
4
|
$dsql = new DedeSql(false); $dsql ->SetQuery( "Select * from `dede_admin` where userid='$userid' Or uname='$uname'" ); $dsql ->Execute(); $ns = $dsql ->GetTotalRow(); |
关闭数据库
1
|
$dsql ->Close(); |
实例
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
|
<?php /* DedeCms 数据库使用实例说明 */ require_once dirname( __FILE__ ). "pub_db_mysql.php" ; //引用数据库文件 //确保数据库信息填写正确 //数据库连接信息 $cfg_dbhost = 'localhost' ; $cfg_dbname = 'sccms' ; $cfg_dbuser = 'root' ; $cfg_dbpwd = '123456' ; $cfg_dbprefix = 'sc_' ; $cfg_db_language = 'utf8' ; //新建一个数据库操作类 $dsql = new ScSql(false); ////////////////////////////////获取一条记录的内容/////////////////////////////// //下面是获取一条记录使用实例 $row = $dsql ->GetOne( "Select * From dede_* where id = $aid" ); //获取数据内容保存在数组$row中,通过下标可以将其调用出来 echo $row [ 'id' ]; //下面是循环调用记录 /////////////////////////////////////////////////////////////////////////////// //////////////////////////////将查询获取总数输出///////////////////////////// //获取一个查询记录总数 $row = $dsql ->GetOne( "select count(*) as dd where typeid = $typeid" ); echo $row [ 'dd' ]; //输出总数 /////////////////////////////////////////////////////////////////////////////// //////////////////////////////将查询的若干条记录输出////////////////////////////////// $sql = "Select * from dede_*" ; $dsql ->SetQuery( $sql ); //将SQL查询语句格式化 $dsql ->Execute(); //执行SQL操作 //通过循环输出执行查询中的结果 while ( $row = $dsql ->GetArray()){ echo $row [ 'id' ]; echo $row [ 'title' ]; } //或者采取这种方式输出内容 while ( $row = $dsql ->GetObject()){ echo $row ->id; echo $row ->Title; } /////////////////////////////////////////////////////////////////////////////// //////////////////////////////插入一条记录/////////////////////////////// $sql = " INSERT INTO `dede_member_flink`(mid,title,url,linktype,imgurl,imgwidth,imgheight) VALUES( ".$cfg_ml->M_ID." , '$title' , '$url' , '$linktype' , '$imgurl' , '$imgwidth' , '$imgheight' );"; //插入记录数据库 $dsql ->SetQuery( $sql ); //格式化查询语句 $dsql ->ExecNoneQuery(); //执行SQL操作 /////////////////////////////////////////////////////////////////////////////// /////////////////////////////////////删除一条记录/////////////////////////// $sql = "Delete From dede_member_flink where aid='$aid' And mid='" . $cfg_ml ->M_ID. "';" ; $dsql ->SetQuery( $sql ); $dsql ->ExecNoneQuery(); //或者使用简化模式 $dsql ->ExecNoneQuery( "Delete From dede_member_flink where aid='$aid' And mid='" . $cfg_ml ->M_ID. "';" ); /////////////////////////////////////////////////////////////////////////////// //////////////////////////////////////更新一条记录////////////////////////// $upquery = " Update dede_member_flink set title= '$title' ,url= '$url' ,linktype= '$linktype' , imgurl= '$imgurl' ,imgwidth= '$imgwidth' ,imgheight= '$imgheight' where aid= '$aid' And mid= '".$cfg_ml->M_ID."' ; "; $rs = $dsql ->ExecuteNoneQuery( $upquery ); /////////////////////////////////////////////////////////////////////////////// ////////////////////////////////判断获取数据库内容的常用方法/////////////////// $row = $dsql ->GetOne( "Select * From dede_moneycard_type where tid={$pid}" ); if (! is_array ( $row )){ echo "失败" ; exit (); } ///////////////////////////// $upquery = " Update dede_member_flink set title= '$title' ,url= '$url' ,linktype= '$linktype' , imgurl= '$imgurl' ,imgwidth= '$imgwidth' ,imgheight= '$imgheight' where aid= '$aid' And mid= '".$cfg_ml->M_ID."' ; "; $rs = $dsql ->ExecuteNoneQuery( $upquery ); if ( $rs ){ echo "成功" ; } else { echo "失败" ; } //////////////////////////////////获取总数////////////////////////////////// $dsql = new DedeSql(false); $dsql ->SetQuery( "Select * from `dede_admin` where userid='$userid' Or uname='$uname'" ); $dsql ->Execute(); $ns = $dsql ->GetTotalRow(); ////////////////////////////////关闭数据库/////////////////////////////////// $dsql ->Close(); /////////////////////////////////////////////////////////////////////////////// ?> |
dedecms自定义函数(二次开发)的更多相关文章
- 性能测试基础---jmeter函数二次开发
Jmeter函数的二次开发. ·什么时候需要进行jmeter的自定义函数扩展呢? 一般来说,如果我们要对数据进行处理,而jmeter没有提供相应的功能(函数),此时我们可以自己进行自定义函数的扩展. ...
- Jmeter二次开发——自定义函数
在之前的博文中,Jmeter二次开发--基于Java请求,已介绍了Jmeter二次开发的基础情况,上次分享的是java请求开发,今天来分享下Jmeter中的函数开发.聊到Jmeter的函数,知道Jme ...
- 浅谈Excel开发:六 Excel 异步自定义函数
上文介绍了Excel中的自定义函数(UDF ),它极大地扩展了Excel插件的功能,使得我们可以将业务逻辑以Excel函数的形式表示,并可以根据这些细粒度的自定义函数,构建各种复杂的分析报表. 普通的 ...
- Excel催化剂开源第12波-VSTO开发遍历功能区所有菜单按钮及自定义函数清单
在插件开发过程中,随着功能越来越多,用户找寻功能入口将变得越来越困难,在Excel催化剂 ,将采用遍历所有功能的方式,让用户可以轻松使用简单的查找功能找到想要功能所在位置,查找的范围有:功能按钮的显示 ...
- 齐博x1 二次开发的灵魂fun函数
X1最强大之处,体现在灵活,扩展性强,在使用过程中,你会发现灵活之处非常之多. 现在跟大家讲一下,灵魂函数 fun() X1的核心函数文件是 application/common.php 随着模块频道 ...
- 浅谈Excel开发:四 Excel 自定义函数
我们知道,Excel中有很多内置的函数,比如求和,求平均,字符串操作函数,金融函数等等.在有些时候,结合业务要求,这些函数可能不能满足我们的需求,比如我想要一个函数能够从WebService上获取某只 ...
- PHPCMS V9二次开发便捷自定义后台入口文件夹
phpcms v9二次开发便捷自定义后台入口文件夹 最新发布的phpcms v9由于采用了mvc的设计模式,所以它的后台访问地址是固定的,虽然可以通过修改路由配置文件来实现修改,但每次都修改路由配置文 ...
- Qt+QGIS二次开发:自定义类实现查询矢量数据的属性字段值(图查属性)
在GIS领域,有两种重要的查询操作,图查属性和属性查图. 本文主要介绍如何在QGIS中通过从QgsMapToolIdentify中派生自定义类实现查询矢量数据的属性字段值(图查属性). 重点参考资料: ...
- C/S权限系统得到拼音和五笔的自定义函数(二)
得到五笔: CREATE FUNCTION [dbo].[fun_getWB](@Str VARCHAR(2000)) RETURNS VARCHAR(2000) AS BEGIN DECLARE @ ...
随机推荐
- DIY 博客全文界面的推荐、反对、加关注、返回顶部、快速评论等小功能的集成
博客园已经很不错了,但作为比较“挑剔”的用户,在使用的过程中,还是有一些地方不爽的. 我不是一个专业的前台程序员,也只能凭借自己蹩脚的JS和CSS知识完成对页面的小改造(专业的大虾莫要鄙视呀..). ...
- leetcode@ [87] Scramble String (Dynamic Programming)
Given a string s1, we may represent it as a binary tree by partitioning it to two non-empty substrin ...
- POJ-3714 Raid 平面最近点对
题目链接:http://poj.org/problem?id=3714 分治算法修改该为两个点集的情况就可以了,加一个标记... //STATUS:C++_AC_2094MS_4880KB #incl ...
- linux内存负载分析
衡量内存负载的一个很重要的指标就是页面置换的频率.当linux系统频繁的对页进行换进换出 的时候,说明物理内存不过,不得不进行频繁的置换页面. 使用vmstat(virtual memory stat ...
- Hadoop MapReduce概念学习系列之mr程序详谈(二十三)
这个暂时,没写好. K1,v1 这是增强的for循环. for(Sting w : words) { } 迭代器里,前面,放的是什么类型,后面,迭代的是谁.
- Objective-C Runtime 运行时之三:方法与消息
基础数据类型 SEL SEL又叫选择器,是表示一个方法的selector的指针,其定义如下: typedef struct objc_selector *SEL; objc_selector结构体的详 ...
- UI进阶 数据处理之文件读写
目录: 1-------沙盒机制(SandBox) 2-------简单对象的读写(I/O)操作 3-------复杂对象的读写(I/O)操作 一.沙盒机制(SandBox) 什么是沙盒:每个iOS应 ...
- 幻灯片(响应式设计)(jquery实现)
Html代码: <!DOCTYPE html> <html lang="en"> <head> <meta charset="U ...
- Windows常用命令使用总结
Windows dos常用命令的熟练使用有助于提高工作效率. 1.windows+R:打开运行程序窗口 2.cmd:调用DOS命令窗口 3.mstsc:调用远程桌面命令窗口 4.mspaint:调用画 ...
- 解决ecshop在线客户点击无法唤醒QQ问题
找到default/library/page_footer.lbi中找到QQ代码的相应位置,然后你会发现之前模板里面为什么QQ点击不能对话,是因为QQ客服安装包中的JS代码有的可能是比较旧的代码了. ...