cncml手绘网
标题: 帝国CMS二次开发引用函数文件 [打印本页]
作者: admin 时间: 2019-11-1 10:54
标题: 帝国CMS二次开发引用函数文件
- <?php 6 V' m% E+ d* \7 _# A s) y. @3 p
- define('EmpireCMSAdmin','1'); 7 R' N( ]7 ]7 y: [
- require("../../class/connect.php");//引入数据库配置文件和公共函数文件
) N; {, R- U# j0 N2 A& V, h9 B - require(ECMS_PATH."e/class/db_sql.php"); //引入数据库操作文件 . A: z+ H% g/ Z c8 B* D: @& g& R' h
- require(ECMS_PATH."e/class/functions.php");//导入编译标签文件
, h0 H' e$ s$ W" h6 ` - require(ECMS_PATH."e/class/userfun.php");//引入自定义函数 5 @0 \4 O; h' L" ?0 M1 V
- require(ECMS_PATH."e/class/com_functions.php");
# f2 f- t0 r9 \1 E - require(ECMS_PATH."e/data/dbcache/class.php"); //引入栏目缓存文件
, I r4 e4 ]# Z5 S; ?# j4 O - require(ECMS_PATH."e/member/class/user.php"); //引入会员文件 5 E! h5 ^1 i1 H
- require(ECMS_PATH."e/class/memberfun.php"); //会员处理文件 4 Z8 O' t9 V; V2 _: t
- require(ECMS_PATH."e/data/dbcache/MemberLevel.php");//引入会员缓存文件
, G# K7 f* T9 e8 ?. d6 G2 q - require ECMS_PATH.'e/data/'.LoadLang('pub/fun.php');//引入分页语言包文件
0 r& |/ n6 X8 X! Q1 \$ R - $link=db_connect(); 1 G f0 P+ {" v
- $empire=new mysqlquery();
; r2 w& `6 J) X& Q1 A& Y$ A - $editor=1; . F6 Z6 _0 _! M2 }9 S
- //-------- 分页参数 --------
$ Q* L; [* c: }6 { `" Y - $page=(int)$_GET['page'];
, T6 G% h# \8 q8 j) l$ H4 @ - $start=0; 6 y7 j& b2 y5 M, k9 Z7 D/ J3 c
- $line=30; //每页显示记录数
, _. t# U" l, e& S; g - $page_line=8; //每页显示分页链接数 1 {% G& o4 t4 C; ~3 ]
- $offset=$page*$line; //总偏移量
5 K; `: w2 b3 ]8 b' J - //-------- 查询SQL --------
- Y6 K8 I- J$ O$ f# t: L' Q c - //取得信息总数
g6 C& C8 U* F7 Y I0 E6 [ - $totalquery="select count(*) as total from {$dbtbpre}release_money order by id desc"; n4 u9 c+ ~& X8 j" Z2 e/ r5 s. @
- $num=$empire->gettotal($totalquery);
7 K8 T H6 u; A# P - //select查询SQL % ^* L+ X' `! c! F$ c- U& L* z
- $query="select * from {$dbtbpre}release_money";
) y" I6 D) `& ^ - $query.=" order by id desc limit $offset,$line"; 0 a8 j* k4 E" w( y0 o0 j
- $sql=$empire->query($query); " ]: }2 G) L1 T6 X
- $listpage=page2($num,$line,$page_line,$start,$page,$search);//取得分页导航 + y6 L u0 U. {5 x, G5 X
- ?> ( F0 \# j3 [6 h9 M% N0 B9 L0 L2 V
- <html> ( ~. p+ h- i0 D9 I" c% s
- <head>
9 e% t9 a; S6 x/ C( S- }6 |0 A4 M1 I) N - <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
& i: H- [* s& e- c - <title>用户消费记录预览</title>
$ c8 u6 ? r/ H, }" W( m% }: E( A0 m - <link href="<?=$public_r['newsurl']?>e/admin/adminstyle/1/adminstyle.css" rel="stylesheet" type="text/css">
6 G; `- X% x0 @# c+ O t - </head>
/ C! @& k( Q: S1 \% h0 ^8 Z( [7 P# N" C+ ? - <body>
. C2 J1 J) o0 u - <table width="100%" border="0" align="center" cellpadding="3" cellspacing="1">
$ f. Y' ]8 S$ G$ J: ? - <tbody>
+ }* w/ e3 `- u- C* ^ - <tr>
6 A, g2 ~3 ~/ j" O6 U A - <td width="50%">位置:<a href="index.php">用户消费记录</a></td> / u- {8 I2 V( J3 E+ i6 d
- </tr>
/ V* p; H0 K* Z+ F# \3 p; E - </tbody> 0 e( \2 v6 q5 o8 Z
- </table> 1 Q' }" ~6 p4 A @* N( \& Y
- <form name="form1" method="get" action="?act=a">
4 t0 J# Y( f" R3 D- S/ q - <table width="800" border="0" cellpadding="3" cellspacing="1" class="tableborder">
/ e% N) ~' f7 x8 J - <tbody><tr>
: f6 T& R3 n1 u5 V5 T - <td height="25" bgcolor="#FFFFFF">会员名: 5 }( ?& ~; c+ @ B* q
- <input name="keyboard" type="text" id="keyboard" value="">
) Y1 k; Q& J3 X - <input type="submit" name="Submit" value="搜索">
1 _2 L& z$ B% w# M8 o% U - <input name="sear" type="hidden" id="sear" value="1"></td>
( Y2 ?: [( f3 u: G2 I1 f9 M* X5 t - </tr>
& I. R' O3 W4 z - </tbody> # E2 T7 e6 M6 X2 W
- </table> ! E' F! Z/ D+ Z" A; }) G# _2 [7 _1 C
- </form>
, _3 I1 k% l& |) ?' q( g' o( _# }# k - <table width="800" class="tableborder" cellpadding="3"> 2 ?. ~& ]: N' B6 ]+ x9 g% G& g- t
- <tbody> % w) a. D0 m: B% ]9 K
- <tr class="header" height="30"> * w& v& J* J, t |
- <td>ID</td>
/ Y" j }9 Z G, y7 O - <td>用户名/用户ID</td>
& J$ F- T6 K& c+ I- m - <td>信息</td>
+ y+ v9 P- s7 K9 F" { - <td>扣款</td>
3 [0 `: ^4 Q* q$ B; J. X - <td>时间</td>
) k5 W9 k% S& c) w - </tr> F. s) c$ U' |9 t( _) _8 F
- <?php
, k- m L3 O+ _) ?; _, P - while($row=$empire->fetch($sql)) //循环获取查询记录/与上面的$sql形成分页显示
* U9 Y. v2 C. ~2 m - {
2 E% ]4 U- l9 { - ?> p$ J7 a# z+ p
- <tr height="30" bgcolor="#FFFFFF"> % d5 `" H% B& Q; m. e& V
- <td><?=$row['id']?></td>
& y* G S. i7 K7 R; Z - <td><?=$row['userid']?></td>
5 P2 ^; G1 ^9 {! G2 L$ J, P7 O/ h - <td><?=$row['infoid']?></td> 5 B! N) Y4 F' p# \% t
- <td><?=$row['money']?></td> 7 A# q5 r& M, s
- <td><?=$row['time']?></td>
/ t5 s3 o! ~4 x0 M - </tr>
% ], A& f" r2 o8 [" Z6 e7 v, h - <?php ) w8 i7 G3 s- u( D( O7 z$ {- {5 }
- }
' u3 C `$ X& O" z; x4 V - ?> + z4 D; _4 ]* `3 Y3 R2 f* U& Z$ S
- <tr bgcolor="#FFFFFF"> , f8 {$ Y# i. ~, e
- <td colspan="5"><?=$listpage?></td>
7 F) u) | U6 n) T: H/ E q9 u - </tr>
( X3 M# h( G' u2 M' O0 p2 x - </table>/ l; k& ]+ b. c( x# ?( f m. m7 ~
- </body>
! q& b, y3 j; F w- a. j - </html>
3 A8 g: h* S6 b - <?
* A- b5 B( q0 e; S8 Z/ x6 ~3 V - db_close(); 3 c$ l# p; t" K* W: Z
- $empire=null;
6 A1 I9 o- M, ?! w - ?>
复制代码- <?php ) E, S9 ~' l- c" d- r
- include("./e/class/connect.php"); % L5 a E% h. o' k% m4 y+ v) f
- 2 v* ^3 n! B% j
- //后端Back-End 8 ?6 _' a8 f' V2 B* f( R, _) x* k
- $ecmsdodbdata = getcvar('ecmsdodbdata',1); 3 L8 W6 p- `* [, c
- $eloginlic = getcvar('eloginlic',1); //用户许可证书名称
7 ?- p; p; w3 I3 v$ I - $loginadminstyleid = getcvar('loginadminstyleid',1); //风格ID 3 @- t8 W4 m+ G+ V
- $loginecmsckpass = getcvar('loginecmsckpass',1); //密码加密
5 Q7 i2 I' g! g) H0 D9 e# O - $loginlevel = getcvar('loginlevel',1); //组ID * h6 q8 T! j- }
- $loginrnd = getcvar('loginrnd',1); //认证码加密 5 r: P" t4 e1 w8 J# \# I% t9 y' H' r
- $loginuserid = getcvar('loginuserid',1); //用户ID
0 Z9 E( ^. d2 {* C - $loginusername = getcvar('loginusername',1); //用户名 * |6 u6 c& n: l1 ]6 ]9 N! T( G
- $logintime = getcvar('logintime',1); //登陆时间UNIX时间戳 - T3 C q& a' K% L
- : o2 q8 |5 x- b) C
- //前端Front-End
( k# d. t1 A. a - $groupid =getcvar('mlgroupid'); //会员组ID / Q3 q1 @/ B' a, X
- $rnd =getcvar('mlrnd'); //认证码加密 1 |& c2 o: R. _2 l
- $userid =getcvar('mluserid'); //会员ID
$ [* v" {) ^1 j1 b J, i: R - $username =getcvar('mlusername'); //会员用户名
& B+ u9 @; M1 P) M; _3 w& ` - echo $username.'<br/>'; & o# o2 J' m% F' B, K
- ?>
复制代码 # {3 B5 L/ E: P
9 P$ c' Z8 F1 ^8 Y0 g- M% _
- <?php 8 h; d7 n+ Q/ X6 H3 s
- //会员信息
! _; u: P! ?1 }5 e1 ]1 c - $tmgetuserid=(int)getcvar('mluserid'); //用户ID 9 b9 u9 `2 l/ T" n9 \2 z9 @& R
- $tmgetusername=RepPostVar(getcvar('mlusername')); //用户名
0 X ]: C0 J4 I' }4 [9 K - $tmgetgroupid=(int)getcvar('mlgroupid'); //用户组ID
0 w- I5 l1 \2 \& y4 m- a: }$ x2 ? - if($tmgetuserid) //已登录 " g5 h$ Y+ r( ~/ Z9 n% _1 v i
- { 6 @( `% u& R, {+ \1 K# v
- }else{//未登录 * Z5 m/ ]8 ~3 g6 L/ X: R
- }; 7 z; Y; @- c2 V# f" _8 W1 p' b
- ?>
复制代码
- define('ECMS_PATH',substr(dirname(__FILE__),0,-7)); //修改
复制代码 帝国CMS封装后的增、删、改、查语句:
1 l7 ?6 X' C2 Q. o8 b- //修改 * K5 z! V4 ~- P; n9 o4 r
- $res=$empire->query("update {$dbtbpre}t_report set `handle`='{$handle}' where `id`=$id"); : M v" r- x( X, Q' ^
-
% ~! K: p' [4 a - //插入 8 q- L$ N' i5 x) I: D m/ @
- $res=$empire->query("insert into {$dbtbpre}t_app_version (`version_code`,`version_name`,`log`,`time`) values ('{$version_code}','{$version_name}','{$log}',$time)");
2 P4 s& ~/ H* O2 J1 L7 n. d" ? -
i& ~/ e1 l- r) z - //删除 ( a% S1 {8 x7 I1 `# Z' ^
- $res=$empire->query("delete from {$dbtbpre}school_location_v1_1 where `id`=$id");
* Q7 E* e5 f' t+ Q R: _# g* n -
( @# S2 ~/ r6 ^0 y; {% H - //查询单条数据 / s9 o A3 d/ w
- $res=$empire->fetch1("select * from {$dbtbpre}t_circle_comment_comment where `comment_id`='{$comment['id']}'");
( W+ R7 b- q6 f! `. R% C -
- F$ [4 t8 _6 i5 ~ - //查询多条数据 ( y6 m3 _1 ]# u8 b% C! b
- $sql=$empire->query("select * from {$dbtbpre}t_circle_praise where `user_id`='$id'");
# V. ]. J, @" h - while($praise=$empire->fetch($sql)){
+ l1 }6 ~) T# S, m$ W- k7 | - $res=$empire->fetch1("select * from {$dbtbpre}t_circle_about_me where `from_id`='{$praise['id']}' and `type`=1");
! ?- o# o( ^3 ^% B: `- `: J - if($res){ 7 ?9 U3 \: j4 o5 N4 Y8 x7 W8 F2 S6 |
- $empire->query("delete from {$dbtbpre}t_circle_about_me where `from_id`='{$praise['id']}' and `type`=1"); //点赞是1 * C1 b/ r; q6 ~5 I' D4 w
- }
+ E' l+ [# N0 g2 F! i - }
复制代码 设置指定表的索引字段,增加查询效率- ALTER TABLE `mcc_service_question_category` ADD INDEX ( `category_id2` )
复制代码 FIND_IN_SET(str,strlist)函数
3 T% Q L9 ]3 I6 W! B" w- //筛选包含product的,并且对question_id去重 ; G# h2 |( E. e* T Q9 k! s7 F
- SELECT * FROM `mcc_service_question_options` WHERE FIND_IN_SET('product', TYPE) GROUP BY question_id
$ p \: l# L' t% F; y: K - " |7 R# s/ l. o8 D% y! E8 V
-
6 h5 v- j/ C6 T$ P1 f7 y9 M4 ` - //筛选不包含product的,并且对question_id去重 4 |: k; R- J2 H
- 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″这个参数的记录 , K- }* }7 l" ^9 e: t+ r, A% W
- SELECT * from test where FIND_IN_SET('1',area)
S% H9 Z! B. M' O; B2 H& x -
3 \( s- P8 P$ ^( X2 J - //查询btype字段中包含”15″这个参数的值
! `: y. B2 W* F9 s0 x X& u3 _ - SELECT * from test where FIND_IN_SET('15',btype)
复制代码FIND_IN_SET和like的区别
like是广泛的模糊匹配,字符串中没有分隔符,Find_IN_SET 是精确匹配,字段值以英文”,”分隔,Find_IN_SET查询的结果要小于like查询的结果。
, @0 {6 k/ m7 m& B# f读取单条数据库记录函数:(不循环)
- $empire->fetch1("SQL语句")
8 f% Z7 H4 a% e* {2 A7 O3 `, E - 4 H, ]! g: H! N8 j; Z5 X9 z
- 使用范例:
/ v1 `+ u7 F7 w m0 O - $r=$empire->fetch1("select * from {$dbtbpre}ecms_news where id=1"); 8 R+ D% s/ l4 l' P G+ |8 u
- echo"标题:".$r['title']; 0 i1 E8 Z+ \/ X/ V8 I9 z" |" O
-
: u& {/ T6 N8 P. U+ g - 4、统计SQL查询记录数函数: - R5 O; J. _" \; b/ [5 z
- $empire->num("SQL语句")
2 `- Y$ q) r' I5 g - $empire->num1($sql) ; ^1 U: X+ W8 r- n8 z9 F
- ) J5 F* C8 `' k8 ?* |& S
- 说明:
( }! X1 v& I$ a$ P; L8 d+ J - 两者的区别是:num()直接写SQL语句,而num1()中的$sql为query执行SQL返回的结果。 5 x2 w( g) p6 f6 c; ~8 x4 T
- 6 M0 A, C9 g1 g9 ^& F- ^" g
- 使用范例: 3 F' k: S+ Q$ f" b, X+ R
- $num=$empire->num("select id from {$dbtbpre}ecms_news");
0 d$ x3 R! g# p% O - echo"新闻表共有 ".$num." 条新闻";
复制代码统计SQL查询记录数函数2:(相对于num更高效的函数)
- $empire->gettotal("统计SQL语句"); % }4 t. u. q2 _( Q7 @" u& e( S
-
( O+ r) ]9 ~# j$ q/ m! ^% h - 说明:
" D/ Q ]2 y- v0 h8 A - gettotal()和num()的区别是:gettotal()采用SQL本身的count(*)函数来统计,而num()是采用PHP本身的函数,gettotal()更高效一些。
) k, t$ d3 v( j: d3 q3 Y - gettotal()里的统计数一定要as total,如:“count(*) as total”。 ! @/ @/ z& j, T6 u* [$ C1 a: I% @
- ' l/ Y& X/ Q0 a: b
- 使用范例:
: S* j5 n4 s3 T7 @/ c' o# ] - $num=$empire->gettotal("select count(*) as total from {$dbtbpre}ecms_news"); * A; ^6 u" w& _, O* P
- echo"新闻表共有 ".$num." 条新闻";
复制代码取得刚插入表的自增ID值函数
- 使用范例: G0 n( X9 E1 i4 F% {7 R5 f* G' `
- $empire->query("insert into {$dbtbpre}ecms_news(title) values('标题')"); . Y* ~4 x' C% p# H- y2 h
- $lastid=$empire->lastid(); ' o9 d' m' _7 w4 t" U) u" D8 n: R
- echo"刚插入的信息ID为:".$lastid;
复制代码移动SQL查询结果记录指针
- $empire->seek($sql,$pit) ^$ b! D+ `7 U) l: r4 n, d6 c
- $ S9 y7 U% |) K+ |) `/ q- e
- 说明: ! D8 G( S% D5 v
- $sql为query执行SQL返回的结果,$pit为指针的偏移数。
( q0 J) S' a* c - ; ]0 q8 l/ O- Y& F+ Z' u
- 使用范例: * R$ I6 Z! R8 S0 v
- $sql=$empire->query("select * from {$dbtbpre}ecms_news");
- w+ g5 D8 }6 k; j* y4 H - $empire->seek($sql,2);
复制代码释放SQL查询结果函数:(一般不需要使用)
- $empire->free($sql)
3 \. Q/ r$ m$ z, v3 z - / L7 e8 `- D* c' Y' b% m2 Y7 H
- 说明: % p- p- l- R0 x- U- u6 n
- $sql为query执行SQL返回的结果。 . k3 I# N, i) T9 w. a# q' U
-
0 l5 w5 x Q# l2 G5 m - 使用范例: ! z6 |6 j9 B! k
- $sql=$empire->query("select * from {$dbtbpre}ecms_news");
( y% \: X$ z0 s* C5 E g S - $empire->free($sql);
复制代码
" ] W% A) `* G8 Q7 t6 @( ?" |+ E8 a9 \) Y5 N
% _; p) T$ |# b& l. n- k) p' H
. R0 ~+ D1 g1 O4 M, m- l
| 欢迎光临 cncml手绘网 (http://www.cncml.com/) |
Powered by Discuz! X3.2 |