Home > Backend Development > PHP Tutorial > discuz 想在门户首页自定SQL读取数据库信息,该怎么操作?

discuz 想在门户首页自定SQL读取数据库信息,该怎么操作?

WBOY
Release: 2016-06-23 13:51:34
Original
1072 people have browsed it

<?php$query = DB::query("SELECT * FROM ".DB::table('common_advertisement').";");		while($rs = DB::fetch($query)) {			$code=$rs['code'];		}?>
Copy after login


这样写出错,要引入SQL链接语句吗?


回复讨论(解决方案)

不要加分号;

又是兄弟您,呵呵,谢谢!

不加分号;

<?php$query = DB::query("SELECT * FROM ".DB::table('common_advertisement') );		while($rs = DB::fetch($query)) {			$code=$rs['code'];		}?>
Copy after login


这样也不得呢

文件是:模板/portal/index.php 不用引入什么文件吗?

if(!class_exists('DB')){	echo '不存在';}
Copy after login


若是不存在
就要引入
require_once './source/class/class_core.php';//根目录下C::app()->init();
Copy after login

模板/portal/index.php :

<?php exit; ?><!--{subtemplate common/header}-->...<!--{subtemplate common/footer}--> 
Copy after login


这个文件里是不是不能直接写PHP代码啊?

写:
if(!class_exists('DB')){    echo '不存在';}
Copy after login


这个都不执行,那门户的PHP代码要写在哪?

没玩过门户,模版里可以写php代码,但是不建议
门户的后台php页面应该在\source\module\portal文件夹下,但是这些文件夹下的php都可以调用DB类
不知道你执行DB::query的那句是放在哪儿执行的

我是放在:模板/portal/index.php 里,这个文件是门户的首页模板

<?php exit; ?><!--{subtemplate common/header}--><?php$query = DB::query("SELECT * FROM ".DB::table('common_advertisement') );        while($rs = DB::fetch($query)) {            $code=$rs['code'];        }?><!--{subtemplate common/footer}--> 
Copy after login

这样后门户首页就空白,不懂是什么回事,

可能要写在:/source/module/portal/portal_index.php   才行,晚点我试试

在模版文件中用是不行的,discuz是预编译模版,是匹配不要你php标记
试试
但是还是建议写在后台php文件中

非常感谢,写在后台PHP:/source/module/portal/portal_index.php里可以了,谢谢!

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template