cncml手绘网
标题: 帝国CMS二次开发引用函数文件 [打印本页]
作者: admin 时间: 2019-11-1 10:54
标题: 帝国CMS二次开发引用函数文件
- <?php
7 ]; L- v7 R, U8 ]# F/ X( n" f - define('EmpireCMSAdmin','1');
) { O. U5 W0 C2 W8 I( n - require("../../class/connect.php");//引入数据库配置文件和公共函数文件 ! i; _6 _2 k5 W2 Y# Y; k8 U( A
- require(ECMS_PATH."e/class/db_sql.php"); //引入数据库操作文件
- w' }, c/ }+ _3 T - require(ECMS_PATH."e/class/functions.php");//导入编译标签文件
3 J. u. [7 G' }9 z4 `1 D$ F - require(ECMS_PATH."e/class/userfun.php");//引入自定义函数 ) q6 B6 x0 x0 Y5 w [! L# J, [7 g
- require(ECMS_PATH."e/class/com_functions.php"); D( L1 ^' B$ d! O' O- j( n; w3 {
- require(ECMS_PATH."e/data/dbcache/class.php"); //引入栏目缓存文件 + U, w. A, e) T# Q' |+ }' V# F
- require(ECMS_PATH."e/member/class/user.php"); //引入会员文件 5 D- r. ~/ p8 e* I2 B* k; G3 S
- require(ECMS_PATH."e/class/memberfun.php"); //会员处理文件
1 N2 P9 J! R& F6 y9 D4 K - require(ECMS_PATH."e/data/dbcache/MemberLevel.php");//引入会员缓存文件 , ]. A b+ Y5 b; U* X
- require ECMS_PATH.'e/data/'.LoadLang('pub/fun.php');//引入分页语言包文件
( ^2 O% \4 Q) g* J3 H - $link=db_connect(); . g/ s# d" U# V% q! _: i0 ]6 _' M/ v
- $empire=new mysqlquery();
* Q3 ^9 ^; W) w- {# N; a) J0 Q - $editor=1; / T B" r$ M& [8 D% X9 H
- //-------- 分页参数 --------
! ?: Z2 h8 c- c8 k/ E7 q) W# F: Q - $page=(int)$_GET['page']; , R0 o/ ~" L% r4 R8 Q
- $start=0; 3 Z0 Z# U% V$ I% k) F- k
- $line=30; //每页显示记录数
; N2 ?+ X# j0 U/ k( c. K - $page_line=8; //每页显示分页链接数 4 j1 I" E" f( `1 \* Y& k
- $offset=$page*$line; //总偏移量 % n% O( p1 F" n
- //-------- 查询SQL --------
4 @2 D3 z& ]/ K& w+ t. h - //取得信息总数 3 Y) m* Q8 \6 k2 G0 e9 Z$ L; l* t
- $totalquery="select count(*) as total from {$dbtbpre}release_money order by id desc"; / ?6 R" L2 n1 y( \ X5 `5 B
- $num=$empire->gettotal($totalquery);
/ r8 ^( {0 v; l% Q1 X% g" X% F' B5 U - //select查询SQL
' I. Y9 `+ K( t: O - $query="select * from {$dbtbpre}release_money";
1 x7 j, ^; i4 `1 k - $query.=" order by id desc limit $offset,$line"; % Z6 J6 p3 N: a+ `: j) X
- $sql=$empire->query($query); 3 ^0 T& Y$ j# O- e D) }, C
- $listpage=page2($num,$line,$page_line,$start,$page,$search);//取得分页导航 5 k- Z- T7 C! P" j+ b
- ?> % P5 O; r+ H3 I4 b* E2 r8 c
- <html>
! H( ^) d% K, m! k8 G8 s: s& u - <head> , E5 V; y& K4 s! a$ J. ?4 X
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> & B6 ?8 `" j" L" d6 E$ i7 }
- <title>用户消费记录预览</title>
1 e1 a; L* C6 ]7 D7 U6 t$ E - <link href="<?=$public_r['newsurl']?>e/admin/adminstyle/1/adminstyle.css" rel="stylesheet" type="text/css"> / \* f5 G% Q& Y. i$ v1 ?0 l
- </head>
* T$ S M; A* P$ ]8 G - <body>
4 J2 G# ^' i4 B/ d1 C2 k* d - <table width="100%" border="0" align="center" cellpadding="3" cellspacing="1"> ! t. | P& o3 ? s
- <tbody> 0 w) b3 `1 G, c2 R: U4 @
- <tr> ; A9 H* `6 J$ t5 J9 f
- <td width="50%">位置:<a href="index.php">用户消费记录</a></td> & `8 n( h* S$ Y$ l, C% { W3 C
- </tr> : c7 `: }2 M8 d/ k
- </tbody>
' D" P$ a A, Y. H( A; h - </table>
7 R- P; W. U, H6 Z f" u( S- M% V" i - <form name="form1" method="get" action="?act=a">
( T" {2 f7 _* H1 ]3 e" g- j - <table width="800" border="0" cellpadding="3" cellspacing="1" class="tableborder">
/ J, M2 H* c* ~, x( K0 \ - <tbody><tr>
5 C6 O7 b1 Q3 _# P5 R8 S - <td height="25" bgcolor="#FFFFFF">会员名: 9 W& x+ y$ S2 } G6 |! u
- <input name="keyboard" type="text" id="keyboard" value=""> & P5 ]: t' c. i: F! h: R0 D! d
- <input type="submit" name="Submit" value="搜索"> ( Z% j2 Y7 ^* j
- <input name="sear" type="hidden" id="sear" value="1"></td>
. i1 T2 U" r4 q" b% D9 q4 f5 v - </tr>
! A6 P2 L9 f n, }! S0 ] - </tbody>
) w9 I. g! |5 Q- F. _9 d - </table> ; k" n4 k- p1 J
- </form>
: ?4 f5 d5 Q7 w* I - <table width="800" class="tableborder" cellpadding="3">
: P( F1 m' Y! T8 e - <tbody> " t# p6 z+ H& B2 a2 B& o
- <tr class="header" height="30"> . L: o- u7 e# n; T% i
- <td>ID</td> ; L- o& K* V+ \* x( O% a. v5 X
- <td>用户名/用户ID</td>
# t* T9 v" c d5 p0 a2 r9 E - <td>信息</td>
6 V6 u9 b' V/ J9 N1 e9 \6 d - <td>扣款</td>
) u* y/ e1 V$ |2 a7 n- l - <td>时间</td> 4 i* \, Y. p6 e# T$ f4 u
- </tr> ( h4 [. p4 S0 J1 f# @& L
- <?php
5 H0 @$ z' z" ~% O8 L - while($row=$empire->fetch($sql)) //循环获取查询记录/与上面的$sql形成分页显示 - H, C* F: p2 L- C4 B. [" D
- {
& v$ K$ ?9 ^' K# I# w: c - ?> ! @* q$ C+ j* b4 o" r; q
- <tr height="30" bgcolor="#FFFFFF"> $ q4 |7 |7 L7 r' P! y1 I
- <td><?=$row['id']?></td> 1 L# G' b1 v2 A+ ~6 F9 J: F
- <td><?=$row['userid']?></td>
! I9 ^( X; }. F4 r - <td><?=$row['infoid']?></td> 6 V, V; V5 W& G' k7 e# w
- <td><?=$row['money']?></td>
7 c4 F' i/ l" _, M, N - <td><?=$row['time']?></td>
8 X6 q9 J8 q4 [+ K - </tr>
/ q- Q- d r4 K4 J - <?php ' o0 d k/ r! l O8 l
- }
2 Y* V7 i/ z8 A$ k - ?>
6 a) |+ z9 O: s) n - <tr bgcolor="#FFFFFF">
, U# k- _' O/ j - <td colspan="5"><?=$listpage?></td> " F( |3 j# H4 Z7 v4 n- R& h
- </tr>
1 h1 n3 _& ?* c$ x( u- c! T( l - </table>' @2 s( W3 K r2 N+ F
- </body> 4 ^ d0 b: R; z2 m! t6 T% u
- </html>
* X |6 ^5 G' I% L0 K5 F - <? 2 D! K; [2 T9 _* @
- db_close(); : P+ n- Y" | u3 f
- $empire=null; 5 t' Q. C. i+ ~* U! i0 e
- ?>
复制代码- <?php * U/ D/ V, e" ?$ d
- include("./e/class/connect.php"); / c$ ^' w3 y( X' _
- 1 f2 ?; R1 C. a& c% {0 a
- //后端Back-End
) d, e* w. D8 [ - $ecmsdodbdata = getcvar('ecmsdodbdata',1);
& _( c5 t9 t7 o0 w* K/ f - $eloginlic = getcvar('eloginlic',1); //用户许可证书名称 " b F6 Q0 ]. h3 ?
- $loginadminstyleid = getcvar('loginadminstyleid',1); //风格ID
1 F! X( ]; g! l/ y1 B: b2 _$ x* x5 o3 } - $loginecmsckpass = getcvar('loginecmsckpass',1); //密码加密
6 |6 |! h6 y) |7 K - $loginlevel = getcvar('loginlevel',1); //组ID
: ~+ F" i* W2 l7 a% b9 d5 ~* p - $loginrnd = getcvar('loginrnd',1); //认证码加密 # ]1 ~1 m% F/ h+ H7 I& h( p
- $loginuserid = getcvar('loginuserid',1); //用户ID 5 m$ ]+ B2 D2 u+ l( o" t' E* a
- $loginusername = getcvar('loginusername',1); //用户名 ; D. R& i! K2 f4 z0 Z. x8 |! M. f
- $logintime = getcvar('logintime',1); //登陆时间UNIX时间戳 # G+ l& P# ^0 w
- # t. V8 m8 l. ^- Y0 s+ e
- //前端Front-End
1 |8 D/ o) c/ e* l - $groupid =getcvar('mlgroupid'); //会员组ID
5 ^4 G6 s0 f% J; Q - $rnd =getcvar('mlrnd'); //认证码加密 ) F6 {) Y/ H+ |
- $userid =getcvar('mluserid'); //会员ID
9 ^) o; N5 J3 }, ?+ C - $username =getcvar('mlusername'); //会员用户名
+ i; i+ ?9 `$ v/ a3 ~9 {7 Q( J& x - echo $username.'<br/>'; - `- J( d/ C1 [& h9 o
- ?>
复制代码
4 l" Y5 b. v( E* r# _: d% Y4 F' U9 S
5 o& X) l! `7 @2 W1 V( e4 P- <?php 0 _9 }- i. I9 l4 {
- //会员信息
, z) z: [# C7 m) H/ `+ C1 V - $tmgetuserid=(int)getcvar('mluserid'); //用户ID
8 L( Z- U C1 Q - $tmgetusername=RepPostVar(getcvar('mlusername')); //用户名 . n, w2 ` k# |5 w; W
- $tmgetgroupid=(int)getcvar('mlgroupid'); //用户组ID 1 d5 O, Y8 |4 Z, D! `
- if($tmgetuserid) //已登录
# {( r1 _; N8 o! t* q; C, {/ q - { 4 g. w A0 B" ~- f, H6 y
- }else{//未登录
, X r" b, i. u6 B( u - }; * d- k/ I( r7 v
- ?>
复制代码
- define('ECMS_PATH',substr(dirname(__FILE__),0,-7)); //修改
复制代码 帝国CMS封装后的增、删、改、查语句:1 q3 ?3 s& k3 _8 U: P
- //修改 , n, Y) ~' N! C2 _
- $res=$empire->query("update {$dbtbpre}t_report set `handle`='{$handle}' where `id`=$id");
# V3 l+ h) v7 T' N9 L6 l -
& h. x0 Q# e( c& P7 R9 b( A2 y3 \ - //插入 7 Y$ q5 c' Y D* V8 j
- $res=$empire->query("insert into {$dbtbpre}t_app_version (`version_code`,`version_name`,`log`,`time`) values ('{$version_code}','{$version_name}','{$log}',$time)");
# n+ T) M' a; Z0 V) D+ L - ' Y; i" B& M' U5 A% k( B) u, ]. ?
- //删除 $ l8 j6 G9 V r- W9 j* k! d, k
- $res=$empire->query("delete from {$dbtbpre}school_location_v1_1 where `id`=$id");
) D! c. J/ @6 L& z0 w! y. p -
" R+ o; U6 e1 q5 w - //查询单条数据 1 X* x) ^8 p) @) w; g) G' [; m8 o
- $res=$empire->fetch1("select * from {$dbtbpre}t_circle_comment_comment where `comment_id`='{$comment['id']}'"); 5 \- |2 i& M( g
- / P& ~! |) i5 I; O5 T
- //查询多条数据
- ?3 z/ ?4 k) T - $sql=$empire->query("select * from {$dbtbpre}t_circle_praise where `user_id`='$id'"); ( k: U) g; m! q5 e" T0 V/ Z) ~/ X
- while($praise=$empire->fetch($sql)){ 8 A0 t; w9 X& ` i5 R+ K
- $res=$empire->fetch1("select * from {$dbtbpre}t_circle_about_me where `from_id`='{$praise['id']}' and `type`=1");
& ^+ d% S3 m& A( m5 ^$ H - if($res){ 1 I+ X* n( a0 C4 x
- $empire->query("delete from {$dbtbpre}t_circle_about_me where `from_id`='{$praise['id']}' and `type`=1"); //点赞是1
1 L6 s! H. [/ o+ ?/ \' S3 z - }
& X, p- `7 F" ?1 V' @+ g - }
复制代码 设置指定表的索引字段,增加查询效率- ALTER TABLE `mcc_service_question_category` ADD INDEX ( `category_id2` )
复制代码 FIND_IN_SET(str,strlist)函数
- o; @2 t1 u# {# _* i- //筛选包含product的,并且对question_id去重
' I1 |5 \' ^) T% P5 m - SELECT * FROM `mcc_service_question_options` WHERE FIND_IN_SET('product', TYPE) GROUP BY question_id 2 M+ [, L7 _9 H1 g
- " B7 m ?+ m6 Y! x' \% p
- ! K3 i5 F; b4 Z; I, M3 }9 {2 K) R1 d
- //筛选不包含product的,并且对question_id去重 & n: ?3 y% Q$ c3 z! 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″这个参数的记录 9 G! l* ]; C! v. A6 ~: \
- SELECT * from test where FIND_IN_SET('1',area)
/ K4 V% t2 ] L3 P) U -
" x) k) G- h9 c. O - //查询btype字段中包含”15″这个参数的值 5 Y, c+ p8 x$ e# n
- SELECT * from test where FIND_IN_SET('15',btype)
复制代码FIND_IN_SET和like的区别
like是广泛的模糊匹配,字符串中没有分隔符,Find_IN_SET 是精确匹配,字段值以英文”,”分隔,Find_IN_SET查询的结果要小于like查询的结果。
3 w4 ^) r- c- L9 z读取单条数据库记录函数:(不循环)
- $empire->fetch1("SQL语句") $ H8 L1 j" [/ s" x2 ^$ j" c& p
- ]8 m. @, @1 t: t' x2 P% J6 w
- 使用范例: 5 f1 |/ J: n! r5 Z: s' U& O9 I
- $r=$empire->fetch1("select * from {$dbtbpre}ecms_news where id=1");
/ M; t& m& O$ s! F+ e - echo"标题:".$r['title'];
4 k1 S- {- ]+ n! {* K -
% p/ |, m3 `- h4 ] p - 4、统计SQL查询记录数函数:
' ?" M% z! s& m( p0 @) W - $empire->num("SQL语句")
* W) g T! r; t* x6 h$ O0 R {& m6 W - $empire->num1($sql)
5 O( _1 y( T; I' U; z - " A C ~0 T8 J- c
- 说明:
+ S {% A5 L' a5 f( O2 I - 两者的区别是:num()直接写SQL语句,而num1()中的$sql为query执行SQL返回的结果。
& W4 m( Z$ U/ i" }- I -
2 [0 p. C9 Y& w/ A) n( |0 H - 使用范例:
- K' h7 u9 r: o e* ]' J7 O- R - $num=$empire->num("select id from {$dbtbpre}ecms_news");
/ X$ M$ M% W" z7 Y( l3 W- \: ^6 h - echo"新闻表共有 ".$num." 条新闻";
复制代码统计SQL查询记录数函数2:(相对于num更高效的函数)
- $empire->gettotal("统计SQL语句");
: _) p3 C7 |; S R( t$ d K -
9 H! j; E9 ]3 t7 M# b/ @& \0 V - 说明: - Z0 i/ u% M& A9 V4 i
- gettotal()和num()的区别是:gettotal()采用SQL本身的count(*)函数来统计,而num()是采用PHP本身的函数,gettotal()更高效一些。
R+ T& \& Y8 C e' W9 O - gettotal()里的统计数一定要as total,如:“count(*) as total”。
/ {( C! h6 `% n* W/ M - ' c' S' c% @7 A( r( e
- 使用范例: : x- O; q4 @0 Z
- $num=$empire->gettotal("select count(*) as total from {$dbtbpre}ecms_news");
% [3 E) y( S0 G4 s. L$ g - echo"新闻表共有 ".$num." 条新闻";
复制代码取得刚插入表的自增ID值函数
- 使用范例:
6 |( O0 Z2 D* Q" Q. a1 }, q - $empire->query("insert into {$dbtbpre}ecms_news(title) values('标题')");
; ]- z2 P' w4 V: N2 }7 N - $lastid=$empire->lastid(); 2 I# [) T, I* y/ X8 E) K+ h2 j1 L
- echo"刚插入的信息ID为:".$lastid;
复制代码移动SQL查询结果记录指针
- $empire->seek($sql,$pit) - B/ a }) O5 o& Y- o( }) X
- 6 @7 e, \% j- @1 k0 I' K$ g
- 说明: 3 z+ L* R( |$ V) y: v3 b# C* N
- $sql为query执行SQL返回的结果,$pit为指针的偏移数。
! ?4 e8 I% ~ Y* Q- d- J, K -
$ @! }4 ~; T8 p8 D - 使用范例:
1 a) U$ l) O6 j3 q G' d - $sql=$empire->query("select * from {$dbtbpre}ecms_news"); . P3 f; A* E+ z$ y/ `* D
- $empire->seek($sql,2);
复制代码释放SQL查询结果函数:(一般不需要使用)
- $empire->free($sql)
! i/ ?# z* @, t# j g -
: P B6 _$ V$ L4 ~; t! S - 说明: 9 `( ?! Q* E8 R4 q* F- F5 C& A
- $sql为query执行SQL返回的结果。
% q1 S2 G) O: S0 X3 W3 I/ C# W -
3 N! a3 N! r1 G) A& p% c# A - 使用范例:
: l" E" v9 [4 E. D - $sql=$empire->query("select * from {$dbtbpre}ecms_news");
. x4 A$ j) z9 y" [6 |) f6 P6 _" z - $empire->free($sql);
复制代码
! `. l, J3 G V' H: w6 x7 Z1 f- S$ g7 G+ n* z6 U& m! L. B
+ M% [1 m$ D) e0 A5 X& ?$ S$ j/ ^0 k1 D9 w" I0 x
欢迎光临 cncml手绘网 (http://cncml.com/) |
Powered by Discuz! X3.2 |