本文目录一览:
织梦CMS(dedecms), 数据库多表查询语句求教!!请大神支招
这个简单啊,现将B和C表组合成一个表,然后再查询就行了。
试试这个语句,应该能够查询出来
select * from a,(select * from b union all select * from c)as bb where a.id=bb.aid
在织梦的模版中能不能用php语言?
完全可以,织梦就是php语言写的。 只是我们看到的文件。 是生成的静态。
DEDE 织梦 PHP语句写法
按织梦原来的加就可以了呀。
$body = $arc-Fields["body"];
然后在这个文件找下其他的$description,按一样的方式添加 $body输出就可以了
关于织梦的代码(PHP)
我给你打上详细的注释吧,然后你整理一下逻辑,这个要自己动脑去思考的。
require_once DEDEINC."/arc.partview.class.php"; //包进文件 arc.partview.class.php ,从这个文件名来看应该是局部视图类文件。DEDEINC 为自定义常量,它的值为文件路径,在这个程序一开始应该定义过了,关键字为 define();
$GLOBALS['_arclistEnv'] = 'index'; //定义全局变量 _arclistEnv 的值为 index 。关于 $GLOBALS 数组的应用是基础知识,由于篇幅所限,就不给你写了。
$row = $dsql-GetOne("Select * From `#@__homepageset`"); // $dsql-GetOne() 是对象 $dsql 中参数为 Select * From `#@__homepageset 方法 GetOne() 返回值 赋给变量 $row。从命名来看,GetOne() 方法应该是 SQL 语句方法,从它的参数为一条 SQL 语句也可看出,所以返回值应该为一个数组。
$row['templet'] = MfTemplet($row['templet']); //将以 MfTemplet() 方法处理过的 $row['templet'] 重新赋给 $row['templet']。MfTemplet() 从命名来看,应该是生成模板文件的方法
$pv = new PartView(); //声明类 PartView() 的对象为 $pv
$pv-SetTemplet($cfg_basedir . $cfg_templets_dir . "/" . $row['templet']); //调用方法 SetTemplet().参数为 $cfg_basedir (配置文件目录)和 $cfg_templets_dir (模板配置文件目录)和 / 和 $row['templet'] 已经生成的模板文件。那么这条语句的意思就是根据访问的PHP程序文件生成对应的模板文件传给客户端显示。
$pv-Display(); //这个方法在框架中最为常见,它绝对出现在网页启动器中的最后一行(启动器就是index),意思就是显示结果,当然你也可以根据自己的习惯理解成:run,play,go等。
如上可以看出这个简单的启动器却是逻辑很清晰:
1、包进需要的类文件
2、定义好全局变量,使启动器可以统领全局
3、从数据库中取出主页需要的模板文件信息及配置
4、配置模板
5、显示模板
6、启动
LZ可从我的注释中常看到“从命名来看”的字眼,所以准确的命名也是好的编码习惯,这么做的好处是令被人很容易读懂你的代码,当然自己在写过上万条代码后,不至于忘记以前写过的代码是什么意思