cncml手绘网
标题: 帝国CMS二次开发引用函数文件 [打印本页]
作者: admin 时间: 2019-11-1 10:54
标题: 帝国CMS二次开发引用函数文件
- <?php * I9 N# j% a A4 e. c
- define('EmpireCMSAdmin','1');
2 B. e, E9 L4 I8 ^1 A0 A2 m! B - require("../../class/connect.php");//引入数据库配置文件和公共函数文件
, G8 w4 S% b. o% V/ B1 c$ b/ {) { - require(ECMS_PATH."e/class/db_sql.php"); //引入数据库操作文件
6 G$ }( o0 p2 x1 Y) T( A - require(ECMS_PATH."e/class/functions.php");//导入编译标签文件
0 v# J& T/ X# l. \+ ^& x" c - require(ECMS_PATH."e/class/userfun.php");//引入自定义函数 - y9 O! ~ x4 X& X9 {
- require(ECMS_PATH."e/class/com_functions.php"); 5 t! I1 Y# Q: G9 {. v, }
- require(ECMS_PATH."e/data/dbcache/class.php"); //引入栏目缓存文件 , r$ @/ v4 h$ \9 t( k+ h
- require(ECMS_PATH."e/member/class/user.php"); //引入会员文件
4 [1 D" _7 C9 d! X2 Y- i - require(ECMS_PATH."e/class/memberfun.php"); //会员处理文件
# A+ }' Q6 Q' v; O2 V) \ - require(ECMS_PATH."e/data/dbcache/MemberLevel.php");//引入会员缓存文件
4 a2 F+ I9 |1 Q7 n - require ECMS_PATH.'e/data/'.LoadLang('pub/fun.php');//引入分页语言包文件
; `' w7 }# ^) I, c! @; P - $link=db_connect();
7 Q. t( m" Q% O9 U) o3 ^1 N) k' w- X0 ~ - $empire=new mysqlquery(); , ?' x5 [) T! V& E1 q' _* ?
- $editor=1; ( ]7 D( K7 T2 c1 d' O5 M7 ]
- //-------- 分页参数 --------
1 G$ u) _2 @* v- }: v* d/ z - $page=(int)$_GET['page'];
! w4 |/ x' F$ o. J7 ]- m - $start=0; * s* Z, i# K+ o+ C1 }2 e
- $line=30; //每页显示记录数
. N5 B3 X! h4 p - $page_line=8; //每页显示分页链接数
2 ~. v8 |: X( `6 R9 x9 `; r* | - $offset=$page*$line; //总偏移量 6 |0 U" U. B, T9 Z
- //-------- 查询SQL -------- ! R' @; u" W! P1 h
- //取得信息总数
5 H( Q( V# C; C3 { - $totalquery="select count(*) as total from {$dbtbpre}release_money order by id desc"; ! M7 A6 K) l* b* U1 K4 q4 j
- $num=$empire->gettotal($totalquery); " ^8 c( j6 B2 U; k( t
- //select查询SQL 9 X" \ }) ~9 K8 K
- $query="select * from {$dbtbpre}release_money";
/ [& N8 I7 ]: U) g - $query.=" order by id desc limit $offset,$line";
) k) N, Y) d" _ - $sql=$empire->query($query); $ o7 v( s& [9 C5 R' D7 I1 @, K
- $listpage=page2($num,$line,$page_line,$start,$page,$search);//取得分页导航 ' z$ |% B O; L
- ?>
4 x2 i) q$ r3 I0 E4 i; v2 t- l - <html> + D* n9 ]' p; l# {! T
- <head>
" Y/ q' z) v7 ?. @! `7 t - <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
. _9 h# G' L1 t u5 F& }# ^ - <title>用户消费记录预览</title>
- G1 \9 Z: ~' l% p, {5 G P7 G+ E" n - <link href="<?=$public_r['newsurl']?>e/admin/adminstyle/1/adminstyle.css" rel="stylesheet" type="text/css">
0 `; g: R2 F* |1 M# B - </head>
i% K% |' H: M t$ B - <body>
/ v) |; F1 g' Q - <table width="100%" border="0" align="center" cellpadding="3" cellspacing="1">
X" M1 B& ^( g. C' R' E, H - <tbody>
% U- C% d, D) I5 H; R- v - <tr> : g5 e7 y' D: M( q& S
- <td width="50%">位置:<a href="index.php">用户消费记录</a></td> 7 R$ W, J. S0 m
- </tr>
. J4 G' T* r0 v' m/ a - </tbody> * g& t0 ?! `& \, F
- </table>
; v; m. M) |, p4 D - <form name="form1" method="get" action="?act=a"> 2 U; z: J- @4 g# t' e# D; P
- <table width="800" border="0" cellpadding="3" cellspacing="1" class="tableborder">
. p+ V- k) B* c) I7 ~; U3 q/ i! z - <tbody><tr>
3 m8 `- s8 V7 t: T* t0 Z, I- ? - <td height="25" bgcolor="#FFFFFF">会员名: , m' T% r6 }6 N# ?* ~( D4 z# Z
- <input name="keyboard" type="text" id="keyboard" value="">
g! ~# z3 K+ Z$ {5 |7 C; C2 \ - <input type="submit" name="Submit" value="搜索"> 5 {3 }; o. i o4 Q% E% [5 ]/ e
- <input name="sear" type="hidden" id="sear" value="1"></td> 5 L7 c' L0 d5 y8 a. ~! K; Q
- </tr> - U( z- H0 I# _! H
- </tbody> 1 {5 d' y$ C i
- </table> " U: x5 U$ R4 f$ J+ K, ?
- </form>
& F6 E- c* M: ?/ j6 X# D- _ - <table width="800" class="tableborder" cellpadding="3">
2 z& S% }1 x2 A; \# y - <tbody> ; X8 o+ K- k1 Y
- <tr class="header" height="30"> 7 j: h) l" d* ?0 @* V1 G6 o4 `8 C6 I
- <td>ID</td>
# P& z3 @3 L* I! y5 X - <td>用户名/用户ID</td> . Z7 w1 `( t1 Z8 U+ D( F( N
- <td>信息</td>
. d0 s% I; ^ @: w% T$ Y6 V; @/ w - <td>扣款</td> . Y2 a" m0 V8 N# l7 u) [& y3 a( S
- <td>时间</td>
# h# o; h. _4 Y6 K; m. }! v1 \8 c - </tr> # O7 j1 F, g9 Z# c2 k
- <?php
$ v+ ~6 d; I* D8 U - while($row=$empire->fetch($sql)) //循环获取查询记录/与上面的$sql形成分页显示 4 H( Y. L$ P! [
- {
4 M/ i; J- i- |! Y( L2 B- c, s - ?>
8 G; v: j3 z% {4 ~: I* y, G - <tr height="30" bgcolor="#FFFFFF">
1 `" E C9 J6 b- E$ N; I+ n - <td><?=$row['id']?></td>
0 ~7 y7 ^7 Z1 s+ U - <td><?=$row['userid']?></td>
& P0 h9 `# ^6 m9 ] - <td><?=$row['infoid']?></td> - R. W; w' ?, Q5 Q
- <td><?=$row['money']?></td> ( m, L* \; ]3 |" l6 X. Z
- <td><?=$row['time']?></td> ' q/ V3 X4 n8 l; Z8 F$ @ x
- </tr> ' Y/ B! f7 ?1 f+ O+ Z# {* S) t9 |
- <?php
+ t4 r& K3 w( L9 s% m& | D - } % Q2 |& Q. z& \" |, M
- ?> & b0 T* E' U0 i+ d3 Q) \5 i( o
- <tr bgcolor="#FFFFFF"> 9 r F! B0 P5 n
- <td colspan="5"><?=$listpage?></td> 7 F: q0 ?. y, R; c2 @
- </tr>
& M. K7 a! ^- v; u - </table>
( s6 I# J2 w! g* D$ G - </body> 8 S& }& j, }" Q# k+ \0 ]
- </html>
( }9 W# h# p' v5 V' r; z5 R - <? 5 Z& \- `0 G$ U/ d8 o# X
- db_close(); + `6 {2 A1 B; t0 d9 v
- $empire=null;
% n I! t# ^. C - ?>
复制代码- <?php
5 r$ [; n- {5 T4 K/ S8 Q - include("./e/class/connect.php"); 5 E9 j/ s9 }) s7 D* q
- : J; c. b" m# T! ^# @; y ]# @
- //后端Back-End
+ A5 O5 _3 E4 i0 Z' G - $ecmsdodbdata = getcvar('ecmsdodbdata',1); $ S4 K( I3 r6 t a- O6 W3 T
- $eloginlic = getcvar('eloginlic',1); //用户许可证书名称
, M( d( a' f0 k3 t0 ~+ {/ m! P* ^4 h; z - $loginadminstyleid = getcvar('loginadminstyleid',1); //风格ID
% A& b) }$ N/ |) {# ? - $loginecmsckpass = getcvar('loginecmsckpass',1); //密码加密 + c6 P8 C9 s. I, y' |2 @
- $loginlevel = getcvar('loginlevel',1); //组ID
! `! l0 l/ F" Z' ~4 j4 O - $loginrnd = getcvar('loginrnd',1); //认证码加密 % N/ _1 ]1 b4 V9 ~% \; B
- $loginuserid = getcvar('loginuserid',1); //用户ID 2 u8 {& s. ^: x- m3 N. y1 L [
- $loginusername = getcvar('loginusername',1); //用户名 ' o* Y' ` f( H
- $logintime = getcvar('logintime',1); //登陆时间UNIX时间戳
' Y& T/ S, D# h -
. q; C+ x3 b/ g# f8 I" G - //前端Front-End 9 R& u* u9 Q; V6 @+ n5 {
- $groupid =getcvar('mlgroupid'); //会员组ID 1 B' p/ u% b# K9 U1 Z
- $rnd =getcvar('mlrnd'); //认证码加密 ; W ]) g& c, G8 O$ \/ \
- $userid =getcvar('mluserid'); //会员ID $ d/ G& v( L, a) q M4 w
- $username =getcvar('mlusername'); //会员用户名
% O1 r5 Y7 m# X" K5 K9 ]$ d" v - echo $username.'<br/>';
- M- Z' q( k( ?% ? - ?>
复制代码
" {" H. o; D. @) Z/ e0 e0 l1 B3 A% d
- <?php , H2 j+ p" I$ V. C) I
- //会员信息 8 k2 \2 q# ?$ f$ z
- $tmgetuserid=(int)getcvar('mluserid'); //用户ID 9 s) l& [3 A& q+ ~+ L5 {9 p8 {4 F0 R$ F
- $tmgetusername=RepPostVar(getcvar('mlusername')); //用户名 : g2 U! a, g/ ]. j- }
- $tmgetgroupid=(int)getcvar('mlgroupid'); //用户组ID
- d9 ]2 [: W6 p, i' i1 M* U1 D/ [ - if($tmgetuserid) //已登录 2 S3 ^. o4 i' v% H/ B
- { ' l& s1 f; y$ }
- }else{//未登录
- A1 p' ~: _& o8 V: C- Z: A. h - };
, l& y: u" ]2 |2 S, T - ?>
复制代码
- define('ECMS_PATH',substr(dirname(__FILE__),0,-7)); //修改
复制代码 帝国CMS封装后的增、删、改、查语句:' c8 v! j$ f, s" i' B
- //修改 5 N3 n# v; A* Y3 V& V6 V+ h
- $res=$empire->query("update {$dbtbpre}t_report set `handle`='{$handle}' where `id`=$id");
' M7 q. l# [7 A - ! S% w3 A& h& o% o, A! ]
- //插入 ( x0 o: j: \3 r2 S# m1 i
- $res=$empire->query("insert into {$dbtbpre}t_app_version (`version_code`,`version_name`,`log`,`time`) values ('{$version_code}','{$version_name}','{$log}',$time)"); ' f) _# c; D" c! E$ z7 [
-
- I3 ^0 N; Y- [9 |8 {0 N* R - //删除
7 M7 p, N5 P" O- J7 C' l, b* h - $res=$empire->query("delete from {$dbtbpre}school_location_v1_1 where `id`=$id"); 2 |6 z# d. D( @& R, }) @( t! f
- ; B) X+ [4 y+ Z. k. x- T
- //查询单条数据
8 V6 _4 x: m4 a0 W2 K - $res=$empire->fetch1("select * from {$dbtbpre}t_circle_comment_comment where `comment_id`='{$comment['id']}'");
4 q( N7 e: c+ s% \( d- l r - % A( ^9 ~2 O" v+ q) O- @
- //查询多条数据
- Y1 k7 j- `1 a; H3 `0 f - $sql=$empire->query("select * from {$dbtbpre}t_circle_praise where `user_id`='$id'");
1 q W6 r4 a* e0 E( s - while($praise=$empire->fetch($sql)){ & G+ `7 c% Z; b6 o8 a4 f( C8 u
- $res=$empire->fetch1("select * from {$dbtbpre}t_circle_about_me where `from_id`='{$praise['id']}' and `type`=1");
o: _8 w3 ~2 t - if($res){ 5 D" w4 C; A2 J) l7 v. U) @# ]. F
- $empire->query("delete from {$dbtbpre}t_circle_about_me where `from_id`='{$praise['id']}' and `type`=1"); //点赞是1 ' y1 [) F. N8 k+ W3 Y
- }
, Z" g* L5 c4 N e$ |# T, V9 l H - }
复制代码 设置指定表的索引字段,增加查询效率- ALTER TABLE `mcc_service_question_category` ADD INDEX ( `category_id2` )
复制代码 FIND_IN_SET(str,strlist)函数
" @& L7 ]5 }0 `- I. Q- //筛选包含product的,并且对question_id去重
: j( ?0 S4 o3 {% X* z4 ] - SELECT * FROM `mcc_service_question_options` WHERE FIND_IN_SET('product', TYPE) GROUP BY question_id + Z$ J' |9 J1 F
-
* S6 Q) `7 W8 k3 U, n& q - 5 u% K2 A4 P3 O; h7 l/ a
- //筛选不包含product的,并且对question_id去重
0 W. K8 E: t! B8 w( l o% i4 g - SELECT * FROM `mcc_service_question_options` GROUP BY question_id HAVING !FIND_IN_SET('product', GROUP_CONCAT(TYPE))
复制代码str 要查询的字符串
strlist 字段名 参数以”,”分隔 如 (1,2,6,8)
查询字段(strlist)中包含(str)的结果,返回结果为null或记录
DEMO:
- //查询area中包含”1″这个参数的记录 $ ?0 ~, V& u5 I3 [9 w/ X
- SELECT * from test where FIND_IN_SET('1',area) & L7 }9 f% Y- Y. q; c
-
5 p) P% K* Z8 r4 X4 N# I% B9 q - //查询btype字段中包含”15″这个参数的值
/ Y* R: `9 l/ L* L' B3 v( P: O - SELECT * from test where FIND_IN_SET('15',btype)
复制代码FIND_IN_SET和like的区别
like是广泛的模糊匹配,字符串中没有分隔符,Find_IN_SET 是精确匹配,字段值以英文”,”分隔,Find_IN_SET查询的结果要小于like查询的结果。
! R- n$ g: O' @0 l: p
读取单条数据库记录函数:(不循环)
- $empire->fetch1("SQL语句")
# ` `: |3 j& y( n$ \ - / p" S; W" w% o- Y- N# V* m, x
- 使用范例: % ~* y5 y* d# a' A z0 ]
- $r=$empire->fetch1("select * from {$dbtbpre}ecms_news where id=1"); ) x$ i9 b$ ^1 w& t9 Z: Z0 _3 |4 {
- echo"标题:".$r['title'];
& Z& Z8 d( | ?/ _5 l: E -
1 G; E% |( U0 _% f1 m z - 4、统计SQL查询记录数函数:
3 A. C: T+ k* K6 q2 c4 e6 C - $empire->num("SQL语句") 5 |5 l1 x+ S8 d7 [; @# \, O4 W K
- $empire->num1($sql) + B0 g: u/ Q8 ?. @7 q. p' r
- ' z$ u0 M' L; L5 I, q) W z0 Q% J
- 说明: + ~! ?* R9 l" k
- 两者的区别是:num()直接写SQL语句,而num1()中的$sql为query执行SQL返回的结果。 6 C: c) q4 ~# Q3 P+ D$ l3 e! S
- $ L% k% b' o: e w {
- 使用范例:
E3 f3 ^4 k+ ^0 C4 l. y - $num=$empire->num("select id from {$dbtbpre}ecms_news"); 9 @6 b# l7 }1 D$ C1 i* F0 h2 E
- echo"新闻表共有 ".$num." 条新闻";
复制代码统计SQL查询记录数函数2:(相对于num更高效的函数)
- $empire->gettotal("统计SQL语句"); 1 Q( w5 }8 j( Y/ s
- ! T" ~2 p- m5 d5 q% k
- 说明:
- X; H3 h8 O1 t2 P9 h6 |" ^# L - gettotal()和num()的区别是:gettotal()采用SQL本身的count(*)函数来统计,而num()是采用PHP本身的函数,gettotal()更高效一些。
3 I$ @# J9 @9 g$ g6 K, t - gettotal()里的统计数一定要as total,如:“count(*) as total”。 W3 y5 _: d+ r" b( ~. J0 w" @
-
% F0 H" x( G; K* ^ y - 使用范例: 9 `6 C) @6 n, J5 ~7 j9 x
- $num=$empire->gettotal("select count(*) as total from {$dbtbpre}ecms_news"); $ Y, I: E$ s2 f T( K$ i ~7 G
- echo"新闻表共有 ".$num." 条新闻";
复制代码取得刚插入表的自增ID值函数
- 使用范例: ! H% n% ]2 L, o- _
- $empire->query("insert into {$dbtbpre}ecms_news(title) values('标题')"); 4 m. k- z/ r; Q& _% F, `+ W) R% k4 N
- $lastid=$empire->lastid(); 6 P/ W" W% A' O/ y1 o
- echo"刚插入的信息ID为:".$lastid;
复制代码移动SQL查询结果记录指针
- $empire->seek($sql,$pit) * e+ R0 L( v/ x! c/ T7 n
- . }! o6 Q l0 G$ c
- 说明:
/ M" W& V' u+ O% E* ^$ l - $sql为query执行SQL返回的结果,$pit为指针的偏移数。 ' w: u2 k) e2 E) } ~* Z" i
-
4 g* e1 j4 W; s* i4 R - 使用范例: 0 D0 ] I% W0 r! Y
- $sql=$empire->query("select * from {$dbtbpre}ecms_news");
+ K" `9 @. r+ N7 z. x/ r. l4 } - $empire->seek($sql,2);
复制代码释放SQL查询结果函数:(一般不需要使用)
- $empire->free($sql)
( D0 D' u$ M0 P7 u - ; D! \+ h" r5 r2 b
- 说明:
2 A) ~; N: `! R4 |. I - $sql为query执行SQL返回的结果。 " |# s, {! L: c& ~# `6 o
-
9 _, E6 ]9 |6 i& G5 |4 ]/ G - 使用范例: 7 g) y8 H# e" _/ J. l. b& V
- $sql=$empire->query("select * from {$dbtbpre}ecms_news"); : {: I3 G- [0 b" ~" w+ g
- $empire->free($sql);
复制代码 ! Y/ H6 _$ U/ q. @; T9 k
5 b [( d) J6 v; T# R5 @" W* b z3 }2 t8 v1 t [& R
2 ^0 n E0 Z8 I; T. ]4 u
| 欢迎光临 cncml手绘网 (http://www.cncml.com/) |
Powered by Discuz! X3.2 |