cncml手绘网
标题: 帝国CMS二次开发引用函数文件 [打印本页]
作者: admin 时间: 2019-11-1 10:54
标题: 帝国CMS二次开发引用函数文件
- <?php 7 b) ? M! L. G F- z- Q% r% T
- define('EmpireCMSAdmin','1'); ; ?# j& H! C8 b2 d6 o
- require("../../class/connect.php");//引入数据库配置文件和公共函数文件 0 }' R! W# ~( M
- require(ECMS_PATH."e/class/db_sql.php"); //引入数据库操作文件 6 ^; X* H# f& g1 J; D
- require(ECMS_PATH."e/class/functions.php");//导入编译标签文件 6 a z! o2 e2 q5 Y
- require(ECMS_PATH."e/class/userfun.php");//引入自定义函数 ' V% A5 A3 [- ?* l" v: C& ]) j( M
- require(ECMS_PATH."e/class/com_functions.php"); 5 L [% v: |) n5 ] I
- require(ECMS_PATH."e/data/dbcache/class.php"); //引入栏目缓存文件 ) p. e K1 z) f$ T/ C* }; n: R5 L
- require(ECMS_PATH."e/member/class/user.php"); //引入会员文件 * |. F9 C2 c" O: Q" w3 g6 a
- require(ECMS_PATH."e/class/memberfun.php"); //会员处理文件 ) ^! Y) i6 `, R% d
- require(ECMS_PATH."e/data/dbcache/MemberLevel.php");//引入会员缓存文件 5 u8 i/ U2 E+ _; Q2 _5 {
- require ECMS_PATH.'e/data/'.LoadLang('pub/fun.php');//引入分页语言包文件
& S* A: L" m* w) s6 I - $link=db_connect(); + H& D$ Q! O: G: N% `
- $empire=new mysqlquery();
- y4 R8 s |4 X; ` - $editor=1;
* ?! z. z9 d6 D" a- q7 ?, X - //-------- 分页参数 --------
, ~9 G; N/ R! D& ]+ p6 G" | - $page=(int)$_GET['page']; + A# e7 [ |# _
- $start=0;
- N8 w. Z+ H( L+ M' m: d2 _* A0 `1 \ - $line=30; //每页显示记录数 ; [! e0 t5 q0 r3 q% {$ k
- $page_line=8; //每页显示分页链接数
) u/ I4 |( P- s/ e - $offset=$page*$line; //总偏移量
/ \5 r" i, y7 x S - //-------- 查询SQL --------
0 i/ i/ \. H0 L, G$ e8 X: Q - //取得信息总数
4 @* H) C5 A5 ~; i - $totalquery="select count(*) as total from {$dbtbpre}release_money order by id desc"; 8 C! e/ c# T4 y G
- $num=$empire->gettotal($totalquery); + u$ N6 p/ H1 p" P# w8 {6 V+ j
- //select查询SQL
- f x/ D) u% h4 j* n( g( r3 @ - $query="select * from {$dbtbpre}release_money";
9 f" v3 [# Q/ s/ L2 {7 C - $query.=" order by id desc limit $offset,$line"; / K7 l- d% I) f5 z4 \+ z; v' d
- $sql=$empire->query($query);
" P1 n' }# J6 z+ G$ n - $listpage=page2($num,$line,$page_line,$start,$page,$search);//取得分页导航 7 G- P" m- T w! }$ \ P
- ?>
" ~! M+ U! D2 }$ |' g* Z9 U F - <html> 3 W7 [0 W( C/ Y6 f
- <head>
- M8 X7 P4 ~3 W9 p, O - <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> , d- l! T" _0 b/ I
- <title>用户消费记录预览</title> ) y' M3 l2 n z/ m9 i. O' J+ g
- <link href="<?=$public_r['newsurl']?>e/admin/adminstyle/1/adminstyle.css" rel="stylesheet" type="text/css">
9 W8 G1 t1 E2 Y; N; e# ` - </head>3 s$ j# ^; w& A9 z5 i$ d, w
- <body> . I* f6 f8 N0 H6 {" h
- <table width="100%" border="0" align="center" cellpadding="3" cellspacing="1"> , V# R W. Y$ V. |3 b6 ?- M+ i" c
- <tbody>
5 O5 D2 z* d& _ o$ { - <tr>
6 r6 ^8 Q; @3 h; [7 a) p1 f - <td width="50%">位置:<a href="index.php">用户消费记录</a></td>
/ [! A V* l4 N$ q5 V2 |& ~* \ - </tr>
/ u' d# C I" a7 ]6 P+ g. M - </tbody>
6 f5 q3 m3 n& n# X8 \6 Z- v - </table> 4 \) O+ D _$ p4 i# W) L- g8 O
- <form name="form1" method="get" action="?act=a"> ! t9 H# d7 T7 S
- <table width="800" border="0" cellpadding="3" cellspacing="1" class="tableborder"> + V1 c5 V4 x4 D! k" q3 U9 C3 j1 H
- <tbody><tr> / u4 |1 x) |" f4 m
- <td height="25" bgcolor="#FFFFFF">会员名: 8 e% F! e. [' B% e; [6 i5 ?
- <input name="keyboard" type="text" id="keyboard" value="">
: l: J$ s, U& V# r% ? - <input type="submit" name="Submit" value="搜索">
2 |* ^% b- t6 o3 C - <input name="sear" type="hidden" id="sear" value="1"></td> - w( H7 Q* y1 c- o, m1 S; I0 X2 s
- </tr> ! B5 U4 z) \7 k6 f1 c
- </tbody> - @9 H% f/ W& h1 r1 d; O L
- </table>
/ A# C( B8 f8 B" p/ I: k - </form> . u$ _ Z [% O2 W Q. q
- <table width="800" class="tableborder" cellpadding="3">
6 z% I/ S% {, W; U$ p - <tbody>
4 D% c4 a1 h8 Q% l3 \1 r Q - <tr class="header" height="30"> , Y5 N8 W! [ _5 |
- <td>ID</td>
; G/ x2 A. v6 h" p- d7 ^ - <td>用户名/用户ID</td>
; r9 `$ n2 l& i1 s# \, }2 B - <td>信息</td> 3 l3 A8 I$ C# a. p6 F
- <td>扣款</td> # F4 R+ k5 ~) K# j o. U
- <td>时间</td> 6 I1 @! @3 ?5 H. N8 g' D/ q
- </tr> ' w6 a5 C; _! Q$ u
- <?php % g1 ]0 v0 k0 N y( U3 I+ X3 U- o
- while($row=$empire->fetch($sql)) //循环获取查询记录/与上面的$sql形成分页显示 4 C V. V' h& s w
- {
/ Q# L4 f+ w: Y) R2 r! w - ?> . h l; A- H7 w) U8 Q) P0 D4 u
- <tr height="30" bgcolor="#FFFFFF">
, _3 U$ [8 F" T, ^1 K - <td><?=$row['id']?></td> . M, `' d q" h! d% |) Z2 i
- <td><?=$row['userid']?></td> 1 a, q. M( m# b. d M3 }, x
- <td><?=$row['infoid']?></td> - A6 s4 n) I' G- H
- <td><?=$row['money']?></td> 5 E: i8 i! k( d9 ~0 F8 D) O: m
- <td><?=$row['time']?></td>
( A: X8 u: n9 c" d0 R! ~+ \, F - </tr>
! u4 v* f1 L% O9 g6 q - <?php 8 @+ W" ]" X) C8 K" k7 U
- } * H; q, q$ W/ K% R
- ?>
% |% }; L0 K& M2 v9 O - <tr bgcolor="#FFFFFF">
: _8 `+ G5 v$ G" O - <td colspan="5"><?=$listpage?></td>
% S$ q8 W! a4 u/ h C: l8 S& d - </tr> ' P$ z' e) @5 o! b2 D1 |. ?
- </table>' H# f: V2 W6 M, c+ b5 m
- </body> : }+ }5 q* t' t. F& G8 x
- </html>
/ V* U- C+ z( \ M/ O - <? ( k$ P2 r4 t; j& @
- db_close(); ! W6 {/ o9 k1 ^. V% v& J/ h" Y
- $empire=null; 3 U2 r# i2 j* ^- Q3 F
- ?>
复制代码- <?php " w1 J, ~( X. F% M6 v3 B }
- include("./e/class/connect.php"); + X( z; M3 U6 k# O- J5 U! i! b( x2 r
- 5 r+ T) n$ I7 @2 X" B
- //后端Back-End
% U4 ` m3 [/ P: j& p1 A - $ecmsdodbdata = getcvar('ecmsdodbdata',1); 9 F% O/ i' Z& W; U- z2 w1 V
- $eloginlic = getcvar('eloginlic',1); //用户许可证书名称
4 R( ^8 o8 S B* h - $loginadminstyleid = getcvar('loginadminstyleid',1); //风格ID + s* Z y1 U5 j3 }
- $loginecmsckpass = getcvar('loginecmsckpass',1); //密码加密 ! x8 ], v* O# J) l+ R
- $loginlevel = getcvar('loginlevel',1); //组ID
' B: o N2 S) b/ g - $loginrnd = getcvar('loginrnd',1); //认证码加密 * b- w: @1 A; C) ~ M) t2 z$ u
- $loginuserid = getcvar('loginuserid',1); //用户ID - ^1 ]7 O' y8 W" N
- $loginusername = getcvar('loginusername',1); //用户名
! C% z* F: r. W0 f7 S @ - $logintime = getcvar('logintime',1); //登陆时间UNIX时间戳
0 B/ ]/ A- P8 l2 h' @2 r. X" R2 d -
! I5 I) l* g* J' d" B - //前端Front-End
: Z+ w: E. l- L' w% R% c$ q - $groupid =getcvar('mlgroupid'); //会员组ID
' [) c; x* E8 m8 X - $rnd =getcvar('mlrnd'); //认证码加密 5 O0 m6 q- O: ]8 H3 m8 b
- $userid =getcvar('mluserid'); //会员ID 6 G+ R* v7 E4 y4 Y8 ^7 q- F
- $username =getcvar('mlusername'); //会员用户名 : I6 d+ i. u6 K% h$ G) Q
- echo $username.'<br/>';
$ Z8 b- A) @" i- b+ x% g _. w - ?>
复制代码
r% e$ F$ s: H1 c* R
! K1 T8 s- B) t) b# e$ x: F- <?php . L* H5 F6 |/ v+ G ?# n4 r5 B/ s2 }
- //会员信息
1 Y4 n2 z/ p) Q& d6 Y% [ - $tmgetuserid=(int)getcvar('mluserid'); //用户ID
. `$ ]8 G: O) ~$ e9 J2 O% z& P - $tmgetusername=RepPostVar(getcvar('mlusername')); //用户名 % Q2 A* _8 _% J' h, d9 d
- $tmgetgroupid=(int)getcvar('mlgroupid'); //用户组ID
: E" A/ j' {+ N8 I- ]" D - if($tmgetuserid) //已登录 2 Y3 j; Y, I* x) Z) }" v
- {
1 c: l* B3 A z5 q/ Z1 h- H( U - }else{//未登录 ( [! @- K( R* O6 Z2 z6 H0 T
- };
" h7 Z2 E8 @3 M) D+ v5 P2 s( s1 h* | - ?>
复制代码
- define('ECMS_PATH',substr(dirname(__FILE__),0,-7)); //修改
复制代码 帝国CMS封装后的增、删、改、查语句:" z* _ Q4 R! U7 `
- //修改
7 |1 G. Z8 w( v% v, b - $res=$empire->query("update {$dbtbpre}t_report set `handle`='{$handle}' where `id`=$id"); 2 P1 j! b( F% g( X- c9 T
- : h' ~ w. @7 x4 K' N- w
- //插入 $ ?7 I, c( s6 G7 d
- $res=$empire->query("insert into {$dbtbpre}t_app_version (`version_code`,`version_name`,`log`,`time`) values ('{$version_code}','{$version_name}','{$log}',$time)");
D; [0 ~4 f2 n: x) [% Z -
! f7 e' s( E0 a - //删除 . A( J) o: ~ M! G! e5 Z" z4 y
- $res=$empire->query("delete from {$dbtbpre}school_location_v1_1 where `id`=$id"); ) V! r) U n. G( H* j
- 5 E0 U4 n* H0 t( J" \$ i& l
- //查询单条数据
+ n2 O6 n. b3 {8 j - $res=$empire->fetch1("select * from {$dbtbpre}t_circle_comment_comment where `comment_id`='{$comment['id']}'"); 5 \& D) C2 u' N: g3 i9 C: t
- 7 O% \7 |2 G. D9 Y; Y
- //查询多条数据
* F5 h4 S+ ^/ E- C* \% E - $sql=$empire->query("select * from {$dbtbpre}t_circle_praise where `user_id`='$id'"); 3 V6 N: E. \1 v, `0 C
- while($praise=$empire->fetch($sql)){ 7 J9 E7 s/ h# i) H
- $res=$empire->fetch1("select * from {$dbtbpre}t_circle_about_me where `from_id`='{$praise['id']}' and `type`=1");
' B! q o* m+ p! x - if($res){ 3 z7 C) D9 N( c d$ W
- $empire->query("delete from {$dbtbpre}t_circle_about_me where `from_id`='{$praise['id']}' and `type`=1"); //点赞是1
7 e w3 t, c0 u3 K' ?* V - } 5 U d9 E4 g$ j/ F
- }
复制代码 设置指定表的索引字段,增加查询效率- ALTER TABLE `mcc_service_question_category` ADD INDEX ( `category_id2` )
复制代码 FIND_IN_SET(str,strlist)函数4 B* {9 E( L+ u m" v+ |
- //筛选包含product的,并且对question_id去重 5 x9 w' c: A; l Y
- SELECT * FROM `mcc_service_question_options` WHERE FIND_IN_SET('product', TYPE) GROUP BY question_id " m0 d/ w8 _, |2 L
- - V t& b: ?2 q, l' K
- 8 `; I! f8 B6 W P, j
- //筛选不包含product的,并且对question_id去重
9 \/ Z# |, O, h) A6 c5 Y$ d8 D. X - 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″这个参数的记录 1 y- e: [0 t( e5 O q: F& a0 ]
- SELECT * from test where FIND_IN_SET('1',area)
5 C' r- q. A& `+ h% b& k$ I -
/ P5 }1 \- c) ~( W; G' D3 i, r& [ - //查询btype字段中包含”15″这个参数的值
3 E: @6 s6 q$ d. l - SELECT * from test where FIND_IN_SET('15',btype)
复制代码FIND_IN_SET和like的区别
like是广泛的模糊匹配,字符串中没有分隔符,Find_IN_SET 是精确匹配,字段值以英文”,”分隔,Find_IN_SET查询的结果要小于like查询的结果。
/ I E# a* K+ P) z/ x1 m* n- k读取单条数据库记录函数:(不循环)
- $empire->fetch1("SQL语句")
. b* `7 ]5 L, i - 0 k* _. l9 P2 [1 ?5 ~
- 使用范例: + Z0 g% i1 t! a; B. l0 q# T# S
- $r=$empire->fetch1("select * from {$dbtbpre}ecms_news where id=1"); 8 {4 W6 X9 e7 Y- ^ w7 D3 I, }
- echo"标题:".$r['title'];
8 d- T. f+ H6 m: d( h1 N -
p3 V( [7 _: ~0 F8 m - 4、统计SQL查询记录数函数: / P- V8 L, Z( U! v6 E) I% y
- $empire->num("SQL语句") " v' r. v% n! l3 u- }1 _
- $empire->num1($sql) f/ ~$ [# ?, ~% l
- ' ^& S& Q2 Z' |9 t" A
- 说明:
: b' L! P0 y5 n) P* g: F1 s' R g$ K - 两者的区别是:num()直接写SQL语句,而num1()中的$sql为query执行SQL返回的结果。
# L$ k- J' G$ ?+ M -
6 h- a$ u4 @- M- y - 使用范例: ' r" \; _5 {& w% i* ] P
- $num=$empire->num("select id from {$dbtbpre}ecms_news"); / { I: M; i \' s' f" }* u
- echo"新闻表共有 ".$num." 条新闻";
复制代码统计SQL查询记录数函数2:(相对于num更高效的函数)
- $empire->gettotal("统计SQL语句");
5 t D0 {9 c. ~3 O9 Y - 3 l; Y1 G* Z8 K7 Y
- 说明:
6 z3 a$ K( }& R0 u3 J* Y - gettotal()和num()的区别是:gettotal()采用SQL本身的count(*)函数来统计,而num()是采用PHP本身的函数,gettotal()更高效一些。
3 t9 ~+ x- A" S( P* f - gettotal()里的统计数一定要as total,如:“count(*) as total”。
! ~9 f. g9 Z0 Y/ z -
$ i/ D' W1 D) P$ R" w1 X2 [! Q% o p - 使用范例:
6 d7 Z3 o1 {( G - $num=$empire->gettotal("select count(*) as total from {$dbtbpre}ecms_news"); : \ p8 }% `7 [: k
- echo"新闻表共有 ".$num." 条新闻";
复制代码取得刚插入表的自增ID值函数
- 使用范例:
7 T8 C, ]/ k! T) ]" n) ~7 V - $empire->query("insert into {$dbtbpre}ecms_news(title) values('标题')"); ' h, h: Z$ R" h# M
- $lastid=$empire->lastid();
) U6 {: |: m2 W - echo"刚插入的信息ID为:".$lastid;
复制代码移动SQL查询结果记录指针
- $empire->seek($sql,$pit) 6 v2 m0 @- J5 u/ \5 e
- / h: s9 ~8 X+ n e3 }: U2 p1 ?
- 说明: + I H8 r4 r# o, O5 Z
- $sql为query执行SQL返回的结果,$pit为指针的偏移数。
* ?" }4 F9 w0 a/ n/ C3 N8 }" v -
) R6 X% K" u% x- V - 使用范例:
. \% w( c* K1 t; A2 L- q, a& L - $sql=$empire->query("select * from {$dbtbpre}ecms_news"); ' G1 m4 c! @! t" o
- $empire->seek($sql,2);
复制代码释放SQL查询结果函数:(一般不需要使用)
- $empire->free($sql) 1 {5 _+ r8 b( S9 y3 C0 [
-
- Y0 X) C4 _' [" _# X8 { - 说明:
. @; G/ h( L! ^8 t1 |$ h - $sql为query执行SQL返回的结果。
3 g; H$ ~) H7 \7 l3 M5 u9 } -
; t, R8 T% ?/ O1 I - 使用范例:
/ E% ?- ]- _; n: z5 k3 w& V - $sql=$empire->query("select * from {$dbtbpre}ecms_news");
! A- v$ E& f: z( C' ^ - $empire->free($sql);
复制代码 $ f7 E) I$ n) H2 i5 W* y! ~
% T+ s2 J& x* g* h6 Q
- [, G0 ` C) ?. [/ x* }
( J$ }6 c |: }) N3 h2 J8 A! D
欢迎光临 cncml手绘网 (http://cncml.com/) |
Powered by Discuz! X3.2 |