cncml手绘网
标题: 帝国CMS二次开发引用函数文件 [打印本页]
作者: admin 时间: 2019-11-1 10:54
标题: 帝国CMS二次开发引用函数文件
- <?php
5 B* u# J g7 a! m6 J) s0 y - define('EmpireCMSAdmin','1');
- ~8 p v5 n% ?: X& h4 f; W+ u - require("../../class/connect.php");//引入数据库配置文件和公共函数文件 9 K. n N U7 F0 R4 G
- require(ECMS_PATH."e/class/db_sql.php"); //引入数据库操作文件
$ \* v) I7 j7 g. ]5 z( V - require(ECMS_PATH."e/class/functions.php");//导入编译标签文件
, K% _% Q1 k" a9 [ - require(ECMS_PATH."e/class/userfun.php");//引入自定义函数
& v* p, |0 ?1 l+ S - require(ECMS_PATH."e/class/com_functions.php");
" N2 `7 v7 `6 X6 o2 @+ o - require(ECMS_PATH."e/data/dbcache/class.php"); //引入栏目缓存文件
% J* s3 ]" F* w( T5 Y! l* \! n - require(ECMS_PATH."e/member/class/user.php"); //引入会员文件
. T1 F/ K V0 y/ ^8 c# c7 \ - require(ECMS_PATH."e/class/memberfun.php"); //会员处理文件
. Z; f v0 l& ^4 m - require(ECMS_PATH."e/data/dbcache/MemberLevel.php");//引入会员缓存文件
7 T# Q4 u; K- f4 e, a! A* K; W - require ECMS_PATH.'e/data/'.LoadLang('pub/fun.php');//引入分页语言包文件
, ^4 F U! E+ V# a. O2 B - $link=db_connect();
7 ~1 r& w" D/ p5 i4 P# j6 ?4 o - $empire=new mysqlquery(); 7 H, g: k/ ]$ ?
- $editor=1;
3 f; i0 z% K4 A7 w4 i - //-------- 分页参数 --------
% h. U: B g0 C' n - $page=(int)$_GET['page'];
$ o( o6 _. ]& ?0 x9 w, I - $start=0; ' Y% `- a% @3 l. j6 S2 t
- $line=30; //每页显示记录数 # r7 P& E2 ?- S
- $page_line=8; //每页显示分页链接数
. p1 V% G/ v& X" F; A, s# q% r - $offset=$page*$line; //总偏移量
# q/ ~; s6 P! y3 ?- _ - //-------- 查询SQL --------
/ u* `( `2 J4 I& G - //取得信息总数 * s6 {4 P' r) t8 a
- $totalquery="select count(*) as total from {$dbtbpre}release_money order by id desc"; - u8 {; R P8 u, r
- $num=$empire->gettotal($totalquery);
: {4 H6 V% {( F- T: @ - //select查询SQL
; X/ t- I0 P3 j$ H9 i2 f; j# E - $query="select * from {$dbtbpre}release_money"; # L& P% `; a2 @" }. _! N! K. U" c
- $query.=" order by id desc limit $offset,$line";
7 R& Q. U3 m0 x3 ]. J. j - $sql=$empire->query($query);
1 Z8 [- a/ ?+ A: H9 U - $listpage=page2($num,$line,$page_line,$start,$page,$search);//取得分页导航 5 J( p' C% @$ a6 f6 `
- ?>
: h+ n% Z7 Q4 J - <html>
% x1 k1 S D0 o5 L0 S3 h& M5 g - <head>
' t. E' F9 x3 n- i! P# z - <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> ; x, t; o# i% Y0 R% ^
- <title>用户消费记录预览</title> 5 o. n# a5 S# {
- <link href="<?=$public_r['newsurl']?>e/admin/adminstyle/1/adminstyle.css" rel="stylesheet" type="text/css">
8 P) b) P% O% v, I! ^& h - </head>
9 t! M% N0 g3 D& H- K - <body>
. c. B3 Z! y" J9 c" I - <table width="100%" border="0" align="center" cellpadding="3" cellspacing="1"> , |0 H7 ^. ~8 n; m' T9 c( M: X
- <tbody>
5 E$ i9 D- X) p' b - <tr> ; o R* }$ { l$ T0 K
- <td width="50%">位置:<a href="index.php">用户消费记录</a></td> ' _) C. x, [3 Q, E
- </tr>
$ c* Z. h' A% e: w7 X. Q - </tbody> ( v( J( H, d( M% m4 x) @
- </table> - v, |# }4 G S: h+ \% }3 d6 k- Q
- <form name="form1" method="get" action="?act=a">
' X$ M/ Z3 P( x9 S& b7 D9 j - <table width="800" border="0" cellpadding="3" cellspacing="1" class="tableborder">
4 c$ x3 G' O7 Z# B - <tbody><tr>
# o. ]: s2 Z5 q3 K8 n t! s9 b( l& T - <td height="25" bgcolor="#FFFFFF">会员名: $ e: z: `) c: \7 o- i3 O; Y+ V
- <input name="keyboard" type="text" id="keyboard" value="">
6 ]* H. O! `+ b5 i6 e& K - <input type="submit" name="Submit" value="搜索">
$ {4 X E2 [- T% f - <input name="sear" type="hidden" id="sear" value="1"></td>
8 Y' l. q& ]: @8 ?& Z - </tr> ) \( \, j4 P* R; \ T
- </tbody>
( u K9 T2 O( W/ m' H9 n* Y" [ - </table>
& n7 g6 N" X$ `4 J* U4 W6 o& j - </form> 0 y4 ~& K* G: e7 l* t! f( t
- <table width="800" class="tableborder" cellpadding="3">
6 ~+ n K9 _$ q" Q1 I. h5 X - <tbody> 6 O! J0 f/ T$ ^
- <tr class="header" height="30">
\8 {, I" a0 [) v - <td>ID</td>
4 b: O& o2 g3 Y - <td>用户名/用户ID</td> 0 E9 O9 E. |8 l# ^8 D$ s9 S
- <td>信息</td>
5 S6 E' y) b4 P, `, @ - <td>扣款</td> ! H' v) L0 e3 {$ ~0 F0 I1 p
- <td>时间</td>
" Y2 M& o" u( k( d* v) k7 y - </tr>
4 X# r4 t7 Z. e. I& g$ i - <?php
9 J2 C, L/ N7 y- } - while($row=$empire->fetch($sql)) //循环获取查询记录/与上面的$sql形成分页显示
/ V- m G0 J1 x. K+ N - { ' j$ `1 G. ^/ `
- ?>
" B6 y) ~4 t- P) [4 X6 R0 ~" w5 u7 L. Q! ^ - <tr height="30" bgcolor="#FFFFFF"> 8 n5 ]8 t& Q0 X) t9 o5 j7 |
- <td><?=$row['id']?></td>
/ V+ o/ s D+ W( X, b* Z - <td><?=$row['userid']?></td>
/ d1 m' a0 g' `0 T - <td><?=$row['infoid']?></td> . h; s9 E9 ?# K, i. h$ A4 m5 G9 ]& H9 ~
- <td><?=$row['money']?></td>
3 @" t H, N; i3 M, g4 \: p0 `; ~ - <td><?=$row['time']?></td>
7 E: C% V4 {( [# O! H) X+ G4 W - </tr>
$ K4 ]5 M* G T - <?php
& J8 n% k _) H - }
: C* r7 h3 |- ~& _% K - ?> ! a% c) J6 v# ]3 n) a( M* D
- <tr bgcolor="#FFFFFF"> ! b' m7 V) S3 c% c1 @: |5 H
- <td colspan="5"><?=$listpage?></td> 4 f; e. D5 p7 C
- </tr> / `' F* V8 J, n4 Y6 w" N+ a
- </table>
6 H7 t2 _+ f; r7 V1 k( S - </body>
0 f9 {6 q! d2 A( K |* J' ` - </html>
/ S9 g; a! o- s: ~5 r6 ~ - <?
M L8 W( |8 y, e4 y/ l" _ - db_close();
& g3 }2 ]6 P0 N' z( H - $empire=null; - m) y$ K6 e0 U ?/ R; E, L, t
- ?>
复制代码- <?php 6 ^% {3 Q/ K; @9 S
- include("./e/class/connect.php");
/ r% W$ M" G4 L# D, b - 3 e/ o1 D/ L9 e D" O7 r
- //后端Back-End : L8 }( ?. }( ~! l9 n
- $ecmsdodbdata = getcvar('ecmsdodbdata',1); 2 P' s% h. p4 ?1 t) w! D- ^1 E
- $eloginlic = getcvar('eloginlic',1); //用户许可证书名称
" I( S* s: c: r4 H$ \( W- w - $loginadminstyleid = getcvar('loginadminstyleid',1); //风格ID 0 r3 q# h. f4 Z- B5 }
- $loginecmsckpass = getcvar('loginecmsckpass',1); //密码加密 8 y3 Y" o9 }( I
- $loginlevel = getcvar('loginlevel',1); //组ID
6 h& d/ J6 |2 e% G; }3 K3 @ - $loginrnd = getcvar('loginrnd',1); //认证码加密
0 V9 u1 \6 U8 B% \ - $loginuserid = getcvar('loginuserid',1); //用户ID $ l) [- R3 C+ [8 l* E t! G
- $loginusername = getcvar('loginusername',1); //用户名 p3 R4 h" r$ A: g$ O& o$ o
- $logintime = getcvar('logintime',1); //登陆时间UNIX时间戳 b2 }6 F/ R9 j @
- 4 c, o' E, u& p( A" D- J
- //前端Front-End
c% X" [5 D! i8 {- u( o7 E! Y9 X6 x - $groupid =getcvar('mlgroupid'); //会员组ID 9 `, N c4 v8 q! ?3 C$ Q
- $rnd =getcvar('mlrnd'); //认证码加密 8 D+ S- k! N/ ~
- $userid =getcvar('mluserid'); //会员ID
/ _! N$ E+ F5 O# S - $username =getcvar('mlusername'); //会员用户名 $ q" j8 ^. G- `# ?' ?9 Q0 ?
- echo $username.'<br/>'; $ _/ J% d/ q& Z6 t- W7 @6 m
- ?>
复制代码 % I. A7 q2 a3 K( q2 Q7 B: A8 R
9 I1 y L9 ]- P6 K& Q
- <?php & d! D4 e9 b& I! y' ?
- //会员信息
0 Z# ~) _3 F, j- V3 P4 ? - $tmgetuserid=(int)getcvar('mluserid'); //用户ID 3 L( ^3 Z& @; R/ P
- $tmgetusername=RepPostVar(getcvar('mlusername')); //用户名
" N/ H1 F5 U9 F1 D7 B v8 y - $tmgetgroupid=(int)getcvar('mlgroupid'); //用户组ID ; J- Z h: @6 q" t9 s# X, r
- if($tmgetuserid) //已登录
3 b, h' |+ |8 G - { 5 R# `3 |- ?/ `+ g$ u
- }else{//未登录 / m( d) r, F( H8 d. T% H
- };
5 b' z/ ], Z5 v. n" |0 h - ?>
复制代码
- define('ECMS_PATH',substr(dirname(__FILE__),0,-7)); //修改
复制代码 帝国CMS封装后的增、删、改、查语句:
' [! X5 i; B* V: |- C- //修改
9 i; ^. \7 f9 G* q* W- h8 | - $res=$empire->query("update {$dbtbpre}t_report set `handle`='{$handle}' where `id`=$id"); ! @' s: t! J. F* `. j- B& G+ t
- # R/ G0 T8 x" u3 [; P. f
- //插入
& O$ g5 t; {. ~8 g$ M; J - $res=$empire->query("insert into {$dbtbpre}t_app_version (`version_code`,`version_name`,`log`,`time`) values ('{$version_code}','{$version_name}','{$log}',$time)");
+ s0 V( i7 G9 A - . [# b/ U& q% C; q. c# x7 @
- //删除 + O: E9 r; |5 y& v! A
- $res=$empire->query("delete from {$dbtbpre}school_location_v1_1 where `id`=$id"); $ [, R# }0 ~- S" L7 T: x- z. U4 h
-
- E, [" j% `! Q: Q& _; E - //查询单条数据 1 O( T2 N! C3 a4 B+ h7 d, \
- $res=$empire->fetch1("select * from {$dbtbpre}t_circle_comment_comment where `comment_id`='{$comment['id']}'");
6 d9 x8 ]5 x9 o$ X/ O- b -
6 ^# \- U: u% B- N5 q - //查询多条数据 0 @0 p3 ~6 Y T! [$ @
- $sql=$empire->query("select * from {$dbtbpre}t_circle_praise where `user_id`='$id'");
a P$ y' W7 D% M - while($praise=$empire->fetch($sql)){ / [- B' ^. O4 X" B
- $res=$empire->fetch1("select * from {$dbtbpre}t_circle_about_me where `from_id`='{$praise['id']}' and `type`=1");
, m9 |2 U* ^, i - if($res){ ! \9 {- [6 l ]% l* ~
- $empire->query("delete from {$dbtbpre}t_circle_about_me where `from_id`='{$praise['id']}' and `type`=1"); //点赞是1
" y3 B0 y/ y0 f; U" \ - }
; c& z1 D% g2 V+ w, x4 @3 Q - }
复制代码 设置指定表的索引字段,增加查询效率- ALTER TABLE `mcc_service_question_category` ADD INDEX ( `category_id2` )
复制代码 FIND_IN_SET(str,strlist)函数, ~6 r; t A1 c) }9 K& ]
- //筛选包含product的,并且对question_id去重
" P1 k) @$ f8 |5 C( I* [8 L - SELECT * FROM `mcc_service_question_options` WHERE FIND_IN_SET('product', TYPE) GROUP BY question_id $ A7 R/ ]. G9 a% p
-
) T# W# |+ G, a: y - 2 S2 V1 }9 Y1 z% R
- //筛选不包含product的,并且对question_id去重 $ ^/ v# W' A) a) q% j
- 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″这个参数的记录
) Z' \! P/ `* e+ {) Z - SELECT * from test where FIND_IN_SET('1',area) 6 b6 S5 p. { i- Y+ z1 n% C
-
! m, l4 y; H5 D9 b5 j. B5 B' K - //查询btype字段中包含”15″这个参数的值
7 h; \# j! H- b! p( A" ^ - SELECT * from test where FIND_IN_SET('15',btype)
复制代码FIND_IN_SET和like的区别
like是广泛的模糊匹配,字符串中没有分隔符,Find_IN_SET 是精确匹配,字段值以英文”,”分隔,Find_IN_SET查询的结果要小于like查询的结果。
! M/ A6 a; @% ?+ E读取单条数据库记录函数:(不循环)
- $empire->fetch1("SQL语句") 9 U$ W" p7 {! n
-
. a4 f* D0 ~! k: `3 ]) O' Y& K - 使用范例:
" d$ W6 T' q: n - $r=$empire->fetch1("select * from {$dbtbpre}ecms_news where id=1");
! H6 @9 h# J) ` - echo"标题:".$r['title'];
1 D8 [1 Q8 B/ M0 ~, v( b -
' E* O {$ \( a6 }( F - 4、统计SQL查询记录数函数: ; s9 g$ s3 D7 J9 j8 D6 n
- $empire->num("SQL语句")
3 X5 G7 {) }# t* U - $empire->num1($sql)
1 H/ t* Z0 ^' R0 X. R) C -
& M" Y! O6 {. a" h; N& s* K - 说明:
& c% [ A8 U8 k' d% C7 @ - 两者的区别是:num()直接写SQL语句,而num1()中的$sql为query执行SQL返回的结果。
' P6 s% F8 L, `& i- C9 g! y* \ - & [& t: O) w L9 l# |7 T9 S
- 使用范例:
7 j4 n6 f& x5 K8 X7 y - $num=$empire->num("select id from {$dbtbpre}ecms_news");
* l, Y2 V( I; }5 t, B5 Z - echo"新闻表共有 ".$num." 条新闻";
复制代码统计SQL查询记录数函数2:(相对于num更高效的函数)
- $empire->gettotal("统计SQL语句");
2 m, x! e+ R1 [* L9 Q* i -
- a# E @- l+ I% F$ F+ V% ?1 ] - 说明:
% D L, g1 \" @6 q6 M+ ?" i - gettotal()和num()的区别是:gettotal()采用SQL本身的count(*)函数来统计,而num()是采用PHP本身的函数,gettotal()更高效一些。 . M: S% p- c) H0 n
- gettotal()里的统计数一定要as total,如:“count(*) as total”。
0 f4 L, {& l+ J -
5 r: i2 A4 c% Y3 C! Y - 使用范例: + B2 l3 ~1 |8 ]* W- J
- $num=$empire->gettotal("select count(*) as total from {$dbtbpre}ecms_news"); + ~0 G+ J: A, R7 k
- echo"新闻表共有 ".$num." 条新闻";
复制代码取得刚插入表的自增ID值函数
- 使用范例: + o3 X V. x5 i2 ~2 g5 ~" \# K
- $empire->query("insert into {$dbtbpre}ecms_news(title) values('标题')"); + q. l1 ^8 D1 Z; o6 d& ~" k6 n f
- $lastid=$empire->lastid();
- x1 O/ z* a+ T' J% y5 I - echo"刚插入的信息ID为:".$lastid;
复制代码移动SQL查询结果记录指针
- $empire->seek($sql,$pit) 1 p$ ?) h8 t7 E0 R9 @+ d6 d
- * A g+ l" D* D- G0 j
- 说明: ; G% V) S: M1 A3 \+ Q5 [
- $sql为query执行SQL返回的结果,$pit为指针的偏移数。
3 c& D) a4 m# i: I2 q - / G" B8 e( W) A% R1 C) K
- 使用范例:
% d" {& J' e* ^ - $sql=$empire->query("select * from {$dbtbpre}ecms_news"); : j/ N L9 X7 O2 C8 f, Z2 v- `
- $empire->seek($sql,2);
复制代码释放SQL查询结果函数:(一般不需要使用)
- $empire->free($sql) ( V2 M" e3 V$ l, _7 n6 F0 [. O
-
6 {! [0 E$ z) I - 说明:
2 s0 I/ x& N8 G( X8 A4 z8 U - $sql为query执行SQL返回的结果。
$ l8 j% ~$ d+ T3 z -
( ?% f# q8 V/ X4 ]( [8 I/ G - 使用范例: - F( y' Z7 ^0 D# T# @ H
- $sql=$empire->query("select * from {$dbtbpre}ecms_news"); 0 A! _& Y$ f) R* N/ i! n& F! Y3 `
- $empire->free($sql);
复制代码
. Y2 T% ?6 i ?+ K2 r7 z b/ |' v6 c2 y; N- X$ ?' `2 w
^0 p9 t! {& k5 G+ t* p
4 X7 |5 `- z$ r; `
欢迎光临 cncml手绘网 (http://bbs.cncml.com/) |
Powered by Discuz! X3.2 |