杰奇cms通过sql查询自定义标签,基础级别

模板开发会经常遇到一个问题,那就是你想要调用某个值的时候,发现当前的页面根本调用不出来,那么这就造成一个很尴尬的局面,直接造成页面上需要调用的数据根本就呈现不出来,而且杰奇cms本身没有像织梦那样的后台自定义字段的功能。问题怎么解决呢?其实首先的第一步就是解密,而且还需要一点儿php的基础,在这篇文章里我就不演示复杂的做法了,就举个简单的例子。
我想要调用当前用户的账户金额,怎么做?这就和我想调用小说总计有多少打赏,我想在首页调用特定的作者有几本书一样,变通一下基本万能,当然有些地方我也不太明确具体含义,得多练习。

调用当前用户的账户金额代码如下:

require_once("/configs/define.php");
@mysql_connect(constant("JIEQI_DB_HOST"), constant("JIEQI_DB_USER"),constant("JIEQI_DB_PASS"));  
@mysql_query("SET NAMES 'gbk'");
@mysql_select_db(constant("JIEQI_DB_NAME"));
include_once( JIEQI_ROOT_PATH."/header.php" );
include_once JIEQI_ROOT_PATH . '/class/users.php';
jieqi_includedb();
$query = JieqiQueryHandler::getInstance("JieqiQueryHandler");
$uid = $_SESSION["jieqiUserId"];
$u_q=@mysql_query("select egold from jieqi_system_users where uid = {$uid}") ;
$inum=mysql_num_rows($u_q); 
$egoldnums = mysql_result($u_q,'0','egold');
$jieqiTpl->assign("egoldnums", $egoldnums);

具体解析:
1.以下代码负责链接数据库,直接使用官方模式:

require_once("/configs/define.php");    //引入网站定义配置文件
@mysql_connect(constant("JIEQI_DB_HOST"), constant("JIEQI_DB_USER"),constant("JIEQI_DB_PASS"));  
@mysql_query("SET NAMES 'gbk'");
@mysql_select_db(constant("JIEQI_DB_NAME"));

2.以下代码为了查询当前用户的id,引入的那两个文件是为了调用出SESSION:

include_once( JIEQI_ROOT_PATH."/header.php" );     //引入header,session存在这里面
include_once JIEQI_ROOT_PATH . '/class/users.php';    //引入user模块的类定义
jieqi_includedb();
$query = JieqiQueryHandler::getInstance("JieqiQueryHandler");
$uid = $_SESSION["jieqiUserId"];

3.通过得到的id值查询用户余额,并且载入模板引擎:

$u_q=@mysql_query("select egold from jieqi_system_users where uid = {$uid}") ;   //执行语句
$inum=mysql_num_rows($u_q);     //获得执行的结果,实际上如果inum为零就相当于语句有问题,但是我这里懒得写判断了,正常情况下,需要判断inum抛出错误或者继续执行。
$egoldnums = mysql_result($u_q,'0','egold');    //从查询结果中遍历到第一条,拿到egold值(从0开始,所以0就算第一条),然后赋值给egoldnums
$jieqiTpl->assign("egoldnums", $egoldnums);    //将egoldnums载入模板引擎,这样页面上就直接通过{?$egoldnums?}调用。

然后再介绍一下,在阅读页调用小说二级标题,因为不需要拿去用户id,所以就比较简单的,毕竟已经得到了小说id的传值:

require_once("../../configs/define.php");
@mysql_connect(constant("JIEQI_DB_HOST"), constant("JIEQI_DB_USER"),constant("JIEQI_DB_PASS"));  
@mysql_query("SET NAMES 'gbk'");
@mysql_select_db(constant("JIEQI_DB_NAME"));
$o_q=@mysql_query("select backupname from jieqi_article_article where articleid = {$articleid}") ;
$inum=mysql_num_rows($o_q);
$backupname = mysql_result($o_q,'0','backupname');
$jieqiTpl->assign("backupname", $backupname);

具体的自己琢磨吧,这是很基本二次开发的玩法,不过提醒一下就是太多的sql的容易导致网站运行缓慢,更复杂的对于懂php的应该特别简单。

本文由网友投稿或「聚码源码网」整理自网络,如转载请注明出处:https://www.jumaniu.com/14104/

本站发布的内容若侵犯到您的权益,请邮件联系 zhangqy2022#yeah.net 删除,我们将及时处理!

从您进入本站开始,已表示您已同意接受本站【免责声明】中的一切条款!

本站大部分下载资源收集于网络,不保证其完整性以及安全性,请下载后自行研究。

本站资源仅供学习和交流使用,版权归原作者所有,请在下载后24小时之内自觉删除。

若作商业用途,请购买正版,由于未及时购买和付费发生的侵权行为,使用者自行承担,概与本站无关。

常见问题
  • 本站所有资源解压密码为:www.jumaniu.com 或 www.tdji.cn
查看详情

相关文章

评论
暂无评论