织梦 dede runphp=yes SQL语句操作

个人实例dede:channelartlist 下循环出 channel 栏目 中的 文章

{dede:sql sql='select * from dede_arctype where reid =~id~ limit 6'}
            <blockquote style='display:[field:global name='autoindex' runphp=yes]@me=@me ==1?'block':'none';[/field:global]'>
          <div class="td1">
            <dl><per>
            [field:id runphp=yes]
                        global $dsql;
                        $id = @me;
                        $sql='select * from dede_archives where typeid='.$id;
                        $row=$dsql->getone($sql);
                        $description = cn_substr($row[description],120);
                        $url = GetOneArchive($row[id]);
                        $url = $url['arcurl'];
                        @me  =<<<str
              <dt><a target="_blank" href="$url"><img src="$row[litpic]" width="100px" height="93px" title="$row[title]"></a>
                <h3><a target="_blank" href="$url" title="$row[title]">$row[title]</a></h3>
                <p>$description</p>
              </dt>
str;
            [/field:id]
            <dd>
            [field:id runphp=yes]
                        global $dsql;
                        $id = @me;
                        $sql='select * from dede_archives where typeid='.$id.' limit 6';
                        $dsql->SetQuery($sql);//将SQL查询语句格式化
                        $dsql->Execute();//执行SQL操作
                        //通过循环输出执行查询中的结果
                        while($row = $dsql->GetArray()){
                        $url = GetOneArchive($row[id]);
                        $url = $url['arcurl'];
                        $str .=<<<str
                        <p><a target="_blank" href="$url" title="$row[title]" class="red"></a><a target="_blank" href="$url" title="$row[title]">$row[title]</a></p>           
str;
                        @me = $str;
                        }
            [/field:id]
            </dd>
             </div>
        </blockquote>
        {/dede:sql}

 

 

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

 



 

posted @ 2016-10-16 09:33  追溯。  阅读(5398)  评论(0编辑  收藏  举报