设为首页 | 添加收藏 | 网站导航 | TAG标签
生活
休闲
笑话
趣图
娱乐
明星
电脑
网络
手机
地图
您的位置:主页 > 电脑 > 网络 >

dedecms数据库操作参考文档 二次开发必备

时间:2016-05-12 16:56来源:百姓资讯网 作者:admin
内容摘要: dedecms虽然功能强大,但还是每个人有每个人的需要和喜好,例如我现在需要一个热门搜索词和热门标签词的html文件,方便调用,但是dedecms并没有提供这样的功能,因此就要自己做一点...

dedecms虽然功能强大,但还是每个人有每个人的需要和喜好,例如我现在需要一个热门搜索词和热门标签词的html文件,方便调用,但是dedecms并没有提供这样的功能,因此就要自己做一点事情,进行二次开发。二次开发的入门基石是什么?是数据库操作。知道了数据库类的调用,剩下的就是网页的html设计了。本文将给大家罗列出来dedecms的数据库类操作语句,并配合相关的实例进行说明,是dedecns二次开发的入门参考资料。

首先,要在开头引用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;
}

将查询的若干条记录输出

$dsql->SetQuery("Select id,typename From `dede_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

删除一条记录

$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();

实例

<?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();
///////////////////////////////////////////////////////////////////////////////
?>

TAG标签:数据库dedecms

一周热门

最新更新

关于本站 | 版权声明 | 广告服务 | 联系我们 | 友情连接 | 网站地图
Copyright @ 2016 www.baixingzixun.com All Rights Reserved. 版权所有 桂ICP备12002077号-1
版权声明:本站资源除特别注明外均来自互联网,如果侵犯了您的版权,请您与我们联系,我们将在收到消息后24小时内删除!
百姓资讯网 www.baixingzixun.com
Copyright @ 2012-2016 桂ICP备12002077号-1
版权声明:本站资源除特别注明外均来自互联网,如果侵犯了您的版权,请您与我们联系,我们将在收到消息后24小时内删除!