cncml手绘网
标题: 帝国CMS二次开发引用函数文件 [打印本页]
作者: admin 时间: 2019-11-1 10:54
标题: 帝国CMS二次开发引用函数文件
- <?php
; Y- A7 h( w! I; T$ j - define('EmpireCMSAdmin','1');
0 b, d% a9 A6 g0 K - require("../../class/connect.php");//引入数据库配置文件和公共函数文件
% R8 ~. |9 w; p- M; V - require(ECMS_PATH."e/class/db_sql.php"); //引入数据库操作文件 ! E9 K; o/ H i- a# C. F# T7 h
- require(ECMS_PATH."e/class/functions.php");//导入编译标签文件 2 a! h2 A; _, e2 c
- require(ECMS_PATH."e/class/userfun.php");//引入自定义函数 0 C# k- \! {, q! i% Z) @6 m2 x
- require(ECMS_PATH."e/class/com_functions.php"); ( e- {" _+ ^ W
- require(ECMS_PATH."e/data/dbcache/class.php"); //引入栏目缓存文件 ' {( d$ x& J0 V
- require(ECMS_PATH."e/member/class/user.php"); //引入会员文件
; \- I! @( N9 W# f* k! h - require(ECMS_PATH."e/class/memberfun.php"); //会员处理文件
6 \/ B6 G0 L- F5 ~+ z, i0 M - require(ECMS_PATH."e/data/dbcache/MemberLevel.php");//引入会员缓存文件 1 U, k: y( r- ]" E3 z+ K* L
- require ECMS_PATH.'e/data/'.LoadLang('pub/fun.php');//引入分页语言包文件
7 m) P# V0 Q o$ W3 q - $link=db_connect(); 4 l V( i+ n& ?5 A& {
- $empire=new mysqlquery();
0 d' G) Q. `: H1 Z; P - $editor=1; $ @, z4 g9 Y: }0 l) y% l) i
- //-------- 分页参数 --------
* ~- m2 c. }: V4 B* ^0 {) q - $page=(int)$_GET['page'];
( c3 C; D0 X! A7 d" S# M2 m, A+ J8 ` - $start=0;
$ F& z7 e$ u. ^: d: X/ A - $line=30; //每页显示记录数
- }4 s) |1 D' [1 E- Z) S - $page_line=8; //每页显示分页链接数 / z& \' f: H) ~7 \
- $offset=$page*$line; //总偏移量
; q$ M7 u4 S: b$ G" V) N - //-------- 查询SQL -------- 6 e _0 }: v- H8 f' G3 m' o0 R& i
- //取得信息总数
5 u4 J, P# j; ~' d6 L - $totalquery="select count(*) as total from {$dbtbpre}release_money order by id desc"; 2 ?1 u( V' l# e" p; ~# }7 c
- $num=$empire->gettotal($totalquery); 7 H& Z7 X" s; i; U' M# ~
- //select查询SQL 9 C A1 d! {& @8 ]
- $query="select * from {$dbtbpre}release_money"; ( C- m/ p8 V6 Z4 k) f( w
- $query.=" order by id desc limit $offset,$line";
7 J( W1 p9 Q0 O6 R5 I& N4 e - $sql=$empire->query($query);
9 k& h7 g+ Z* ?9 ^: |4 u! q3 E/ j - $listpage=page2($num,$line,$page_line,$start,$page,$search);//取得分页导航
h: D% b2 i2 T" D - ?>
. Y$ w( `& p, O' `& Q: d3 V2 O5 v - <html>
4 S) H: X$ ]( I7 o; x/ a" q* w - <head> 9 G# o8 M* M6 X# [
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> 8 @7 \6 O$ J, x! w/ D- k" h
- <title>用户消费记录预览</title>
' g6 A+ j' d. D- F) w - <link href="<?=$public_r['newsurl']?>e/admin/adminstyle/1/adminstyle.css" rel="stylesheet" type="text/css">
/ D* {+ t6 s( S. @# Z9 \ - </head>) u$ _3 X- ^9 L9 I% C
- <body>
* Q+ J9 G- f, ] - <table width="100%" border="0" align="center" cellpadding="3" cellspacing="1">
, A$ N% N" I6 a- j9 d. ` - <tbody>
; S6 D1 y* X$ `% u( k - <tr>
4 h& h- [2 Q3 Z- g3 B; z - <td width="50%">位置:<a href="index.php">用户消费记录</a></td> 2 D4 T( X$ W ~6 g) j4 {
- </tr> 9 k0 o- l7 H# e2 j; W3 K$ v
- </tbody> ( e4 S/ c6 d( z- ^# X% i @0 N/ M
- </table>
! K! `' J2 o* U+ Z- @! o - <form name="form1" method="get" action="?act=a">
7 e4 `2 k( B; T9 r M - <table width="800" border="0" cellpadding="3" cellspacing="1" class="tableborder"> # ^5 ]6 b5 [# W7 j- A/ p+ `, H
- <tbody><tr>
+ x E0 e* l6 G8 a) p6 ~& n - <td height="25" bgcolor="#FFFFFF">会员名: 0 m. J: d2 S8 n) g
- <input name="keyboard" type="text" id="keyboard" value=""> & J* [7 {% u; V
- <input type="submit" name="Submit" value="搜索">
1 i$ O+ B0 L! T. e - <input name="sear" type="hidden" id="sear" value="1"></td>
d1 D$ ^1 y4 i8 R4 m- u - </tr>
( N( U \3 u+ `, F* ] - </tbody>
. q* z) J4 q2 q/ r - </table>
+ i3 c2 s+ G" D p - </form>
& @- V4 c0 H, b, \- J' Z - <table width="800" class="tableborder" cellpadding="3">
& o& M2 F, H B1 v - <tbody>
1 V K) w1 }4 y) d - <tr class="header" height="30">
; d7 i1 u/ ~& y8 E1 Z w( O - <td>ID</td> 2 [" b: v9 T i4 \: t+ O# s. h/ Q
- <td>用户名/用户ID</td>
8 [% j3 h p/ b( y" l5 e. m# A8 Q - <td>信息</td> 2 \4 }, A2 O) Y( h3 Q# x7 x2 W- `7 ?
- <td>扣款</td> 3 J2 p. g; I" Z; k, O# G5 P
- <td>时间</td> % t' {" D( M/ ]
- </tr> - V! y! y7 m' x' ^! e1 @
- <?php $ O1 g. n/ ~' i2 Z+ {
- while($row=$empire->fetch($sql)) //循环获取查询记录/与上面的$sql形成分页显示
0 J2 y8 c; M/ b9 ^0 N6 O - {
. T# |: B1 U- }. v: | N; a! a' D - ?>
5 x& G" @+ L& f, y3 Z) h - <tr height="30" bgcolor="#FFFFFF">
$ N" L# C" [3 q" l: v! S - <td><?=$row['id']?></td>
" z2 i, ?: e9 }$ V - <td><?=$row['userid']?></td>
2 j, g" K/ G3 z; t }0 f1 Y - <td><?=$row['infoid']?></td> 9 ~, n! n0 i: w0 x) g2 a" n
- <td><?=$row['money']?></td>
/ o1 j- c7 `+ Q2 \; ]; t8 O - <td><?=$row['time']?></td>
9 ]; p/ [8 F% D) I* Q# w - </tr> 5 J' t1 I) B _; g
- <?php
* _- m) B3 q) e( r$ P3 N7 X - }
/ r! U% }+ b% J+ |( m) I+ I2 |' c - ?>
. }( G. g* h) K# v) R/ k; i" z7 z* L - <tr bgcolor="#FFFFFF"> 7 m- a6 b& c5 C- c
- <td colspan="5"><?=$listpage?></td>
0 W" P/ |. L$ L% ]1 S5 N6 u- r - </tr> 5 a2 a O3 F2 V0 ~0 v0 C/ B. v; Z
- </table>2 r F% o7 A! T D+ M q
- </body>
. I* b5 q2 F0 _2 |$ \ - </html>
' u2 e* h( ^ v0 w- C - <? ( Z, H2 t& ]1 s! B ]4 T& Y
- db_close(); / [, Y( {! e4 v% h; S2 ^( R
- $empire=null;
) k- M, G6 ?& m9 C2 z7 m - ?>
复制代码- <?php & U% P& j& ?7 r
- include("./e/class/connect.php"); * w& X0 m' P" v; M/ X
-
& k1 B7 d, j6 |8 M4 [& X5 n u - //后端Back-End ' ~$ k7 l: Z# |0 A. ?
- $ecmsdodbdata = getcvar('ecmsdodbdata',1);
9 f# y( {2 D5 |! S( k. k6 A) C - $eloginlic = getcvar('eloginlic',1); //用户许可证书名称
1 i+ P0 u- z( ?5 O: K% v9 P$ X! X9 m - $loginadminstyleid = getcvar('loginadminstyleid',1); //风格ID 6 a/ q* D" l& b( Z# q
- $loginecmsckpass = getcvar('loginecmsckpass',1); //密码加密
+ F5 c! D# J& @ - $loginlevel = getcvar('loginlevel',1); //组ID % J, ^4 n a% C3 j1 M
- $loginrnd = getcvar('loginrnd',1); //认证码加密 " r8 e; _4 c. t* E
- $loginuserid = getcvar('loginuserid',1); //用户ID
i: j8 W! T4 [8 A2 J# _ i - $loginusername = getcvar('loginusername',1); //用户名 : [8 d/ o+ q$ f% V9 C5 i3 k
- $logintime = getcvar('logintime',1); //登陆时间UNIX时间戳
# H% h. C( A) ~" O% G4 Z -
! H3 E ?% y* v' r9 l - //前端Front-End 1 N# j# l- N4 V: D/ f$ e
- $groupid =getcvar('mlgroupid'); //会员组ID
4 a1 s6 x. k0 ^% L) ?8 ~- R6 c( @' W - $rnd =getcvar('mlrnd'); //认证码加密 ; t1 Q* t! v7 r# [8 v
- $userid =getcvar('mluserid'); //会员ID , \1 b( q' v# Y$ i f
- $username =getcvar('mlusername'); //会员用户名
, p ?; n9 U3 [0 b/ I) f - echo $username.'<br/>';
\: w4 J% l# D2 X& M' f - ?>
复制代码 . \4 R8 ~$ t9 \: t' d% a
2 b i" j/ U! X% m: x( c6 c) d, M- <?php , X2 |% F) y7 S/ C
- //会员信息 4 _' f4 X6 ^0 e; j* p7 }
- $tmgetuserid=(int)getcvar('mluserid'); //用户ID 8 E- ^0 ^+ S$ z" c+ f& Y
- $tmgetusername=RepPostVar(getcvar('mlusername')); //用户名 ) I( T3 j* ]# [
- $tmgetgroupid=(int)getcvar('mlgroupid'); //用户组ID
& H# E8 X5 E* K- u& C. V3 ~ - if($tmgetuserid) //已登录
. t: F9 j& X- l$ _0 @- d- v3 z - {
* O1 W$ N( Q6 K3 O, ?2 @/ o. k - }else{//未登录
( G, \/ p, A6 s }0 p8 j" k - };
5 b# `* J% R+ Y5 W, u - ?>
复制代码
- define('ECMS_PATH',substr(dirname(__FILE__),0,-7)); //修改
复制代码 帝国CMS封装后的增、删、改、查语句: ?8 \2 }. o, E3 n
- //修改 1 g8 m( a- Q& O) O" ]* _2 f
- $res=$empire->query("update {$dbtbpre}t_report set `handle`='{$handle}' where `id`=$id"); : ^% w/ M- ~8 D
- ' Q( T u% i4 C* e$ Z* s7 R. x
- //插入
- T4 w1 J3 M1 _ - $res=$empire->query("insert into {$dbtbpre}t_app_version (`version_code`,`version_name`,`log`,`time`) values ('{$version_code}','{$version_name}','{$log}',$time)"); / a0 Z/ _6 H- L8 q
- V6 T B2 Q) r/ O: G+ i5 L, q8 {
- //删除 + C, R, S! q7 |& D0 l, E) M
- $res=$empire->query("delete from {$dbtbpre}school_location_v1_1 where `id`=$id"); ( }5 P7 p3 h# p# r
- & u9 B S s% |3 U
- //查询单条数据
4 ~# [3 Z4 T' |& h# s - $res=$empire->fetch1("select * from {$dbtbpre}t_circle_comment_comment where `comment_id`='{$comment['id']}'"); 0 D# W# d" d8 b+ P1 M2 [' s4 P
-
3 |) u! H- P% F. ^, m - //查询多条数据 $ b0 {) K* ^! k9 S3 B% |& F
- $sql=$empire->query("select * from {$dbtbpre}t_circle_praise where `user_id`='$id'"); 3 o" n( E6 f: H* U) [8 S0 ~2 W
- while($praise=$empire->fetch($sql)){
& q8 O* b$ ]* L2 E+ c - $res=$empire->fetch1("select * from {$dbtbpre}t_circle_about_me where `from_id`='{$praise['id']}' and `type`=1"); , L% o1 p( k8 M2 y6 y0 q
- if($res){
2 Q% T( H2 l4 T3 X+ I0 w; x; e/ K; \1 a - $empire->query("delete from {$dbtbpre}t_circle_about_me where `from_id`='{$praise['id']}' and `type`=1"); //点赞是1
# g! H. p8 ^, \& } - }
7 ` X2 z, T6 [1 Y - }
复制代码 设置指定表的索引字段,增加查询效率- ALTER TABLE `mcc_service_question_category` ADD INDEX ( `category_id2` )
复制代码 FIND_IN_SET(str,strlist)函数
3 ^$ v8 o' ^; _0 v" |- u- //筛选包含product的,并且对question_id去重
# W, Y2 u8 G2 G$ ~ - SELECT * FROM `mcc_service_question_options` WHERE FIND_IN_SET('product', TYPE) GROUP BY question_id 2 s; @; w2 q, s2 T* u- [
-
# {" u* R- Y* @: x/ v$ H* { - ( _. [" Y) u T" Z) G! a
- //筛选不包含product的,并且对question_id去重
* t9 j) _" W( }" t. q: y - 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″这个参数的记录
" o+ D. B3 g5 H - SELECT * from test where FIND_IN_SET('1',area) # }3 O! h( ?# d1 d, M9 u! y' V
-
7 [% ]( M- v# @8 ]3 `" ~ - //查询btype字段中包含”15″这个参数的值
( C! C' |6 e0 E. d* P# H- p - SELECT * from test where FIND_IN_SET('15',btype)
复制代码FIND_IN_SET和like的区别
like是广泛的模糊匹配,字符串中没有分隔符,Find_IN_SET 是精确匹配,字段值以英文”,”分隔,Find_IN_SET查询的结果要小于like查询的结果。
# B; F0 U, ]) |读取单条数据库记录函数:(不循环)
- $empire->fetch1("SQL语句")
8 M' A9 t- D8 L# D% @ - & ^6 V6 L' p5 R0 F& C* G
- 使用范例:
. n, W& x8 m3 a6 f1 A+ S - $r=$empire->fetch1("select * from {$dbtbpre}ecms_news where id=1"); 6 b/ j. H+ k0 U! N/ V$ o
- echo"标题:".$r['title']; - \, s8 v( z; P% |! w
-
3 x5 T1 B1 m) ~5 m6 Q7 j - 4、统计SQL查询记录数函数: : j% L5 |+ {1 G# Q# b9 `4 F3 _8 u
- $empire->num("SQL语句") 6 D+ {3 q: u* d, t
- $empire->num1($sql) 0 V* [9 T+ O+ q5 ~4 z! {
-
+ s' Y6 |) ]( Q6 B - 说明:
& G* t2 J7 Y' k7 ?% P' ] - 两者的区别是:num()直接写SQL语句,而num1()中的$sql为query执行SQL返回的结果。
9 `( N V1 j+ A p) V, \8 J -
+ i$ T5 k! t5 n8 m2 Y# J* Z# N - 使用范例: 8 z! v7 }! E; l( X. b% d) k
- $num=$empire->num("select id from {$dbtbpre}ecms_news"); 2 k% u; q: B- X( e4 u- N
- echo"新闻表共有 ".$num." 条新闻";
复制代码统计SQL查询记录数函数2:(相对于num更高效的函数)
- $empire->gettotal("统计SQL语句");
' Y, q0 L; d6 V, K7 h4 f; Q -
5 l) k( j; \% c0 ?( _' m" h5 B4 b - 说明:
& p k- c! F4 s9 b( v - gettotal()和num()的区别是:gettotal()采用SQL本身的count(*)函数来统计,而num()是采用PHP本身的函数,gettotal()更高效一些。
7 g( x& a$ y0 k - gettotal()里的统计数一定要as total,如:“count(*) as total”。
# q7 K& P1 _* \2 s3 ?0 B: _, F% j - 0 k2 U: J. e5 n$ H3 y# t4 X/ @, E
- 使用范例: 2 W/ N$ Q4 h' B U/ S9 k1 \& }
- $num=$empire->gettotal("select count(*) as total from {$dbtbpre}ecms_news"); . c3 E5 M S0 g2 ~" ~. {
- echo"新闻表共有 ".$num." 条新闻";
复制代码取得刚插入表的自增ID值函数
- 使用范例:
, v n2 e* m* p0 p8 u* Z( h4 V# b! u - $empire->query("insert into {$dbtbpre}ecms_news(title) values('标题')"); ) k: y. b5 r. H8 P! j3 s6 @5 J
- $lastid=$empire->lastid();
5 p5 J u* h9 u9 B1 ]& u; \ y; w - echo"刚插入的信息ID为:".$lastid;
复制代码移动SQL查询结果记录指针
- $empire->seek($sql,$pit) " H/ X) }; F. G) x" u
- }" ?1 T4 }2 _% ?1 j
- 说明: / j0 c. H3 X Z
- $sql为query执行SQL返回的结果,$pit为指针的偏移数。 / p& I! I. o Y
-
5 t, s. s+ p% E0 @ - 使用范例:
% ^1 i, n: q) y. g, u - $sql=$empire->query("select * from {$dbtbpre}ecms_news"); " s1 {' i* X/ `$ Q
- $empire->seek($sql,2);
复制代码释放SQL查询结果函数:(一般不需要使用)
- $empire->free($sql) 1 _% i9 d3 W% v' m$ _: f& } F
- 9 ]- G' v+ |' o, t! \ B8 U
- 说明: # D% v' G! h- a, d% V
- $sql为query执行SQL返回的结果。
# V- b* w, I. P& v- F1 g5 i - 8 b S( ^/ x1 v* q" f
- 使用范例: $ \; S! {1 L) [; N" x
- $sql=$empire->query("select * from {$dbtbpre}ecms_news");
1 E1 o' w( G) i- s - $empire->free($sql);
复制代码 / w. K$ `0 U% C0 F- z0 ?" K* I
2 B1 a9 a* m0 u
6 N0 V1 U- a j; Z1 R2 R9 q: Z# S9 Z _6 l# S. A( t% B
| 欢迎光临 cncml手绘网 (http://bbs.cncml.com/) |
Powered by Discuz! X3.2 |