(PHP)JTBC1.0单页模块
说明:
功能灵感参考自3.0单页模块
实现方式使用1.0中的模板管理功能
本模块由JTBC教程网(http://jtbc.org.cn)免费提供.
下载地址:
https://wdjacms.pipipan.com/fs/16922972-291495742
使用方法:
解压后,请上传page文件夹至网站根目录
后台清除缓存,刷新后台页面,即可看到单页管理.
我站在青青的牧场
(PHP)JTBC1.0单页模块
说明:
功能灵感参考自3.0单页模块
实现方式使用1.0中的模板管理功能
本模块由JTBC教程网(http://jtbc.org.cn)免费提供.
下载地址:
https://wdjacms.pipipan.com/fs/16922972-291495742
使用方法:
解压后,请上传page文件夹至网站根目录
后台清除缓存,刷新后台页面,即可看到单页管理.
PHP删除目录及目录下的所有文件
//循环删除目录和文件函数
function delDirAndFile( $dirName )
{
if ( $handle = opendir( "$dirName" ) ) {
while ( false !== ( $item = readdir( $handle ) ) ) {
if ( $item != "." && $item != ".." ) {
if ( is_dir( "$dirName/$item" ) ) {
delDirAndFile( "$dirName/$item" );
} else {
if( unlink( "$dirName/$item" ) )echo "成功删除文件: $dirName/$itemn”;
}
}
}
closedir( $handle );
if( rmdir( $dirName ) )echo “成功删除目录: $dirNamen”;
}
}
?>
<a href="javascript:history.go(-1)">返回上一页</a>
<a href="javascript:location.reload()">刷新当前页面</a>
<a href="javascript:" onclick="history.go(-2); ">返回前两页</a>
<a href="javascript:" onclick="self.location=document.referrer;">返回上一页并刷新</a>
<a href="javascript:" onclick="history.back(); ">返回上一页</a>
页面跳转:
onclick="window.location.href='list.php'"
Javascript刷新页面的几种方法:
1,history.go(0)
2,location.reload()
3,location=location
4,location.assign(location)
5,document.execCommand('Refresh')
6,window.navigate(location)
7,location.replace(location)
8,document.URL=location.href
自动刷新页面的方法:
1.页面自动刷新:把如下代码加入<head>区域中
<meta http-equiv="refresh" content="10">
10指每隔10秒刷新一次页面.
2.页面自动跳转:把如下代码加入<head>区域中
<meta http-equiv="refresh" content="10;url=http://www.baidu.com">
10指隔10秒后跳转到http://www.baidu.com页面
js自动刷新当前页面:
<script language="JavaScript">
function myrefresh()
{
window.location.reload();
}
setTimeout('myrefresh()',1000); //指定1秒刷新一次
</script>
JS刷新框架的脚本语句
//刷新包含该框架的页面用
<script language=JavaScript>
parent.location.reload();
</script>
//子窗口刷新父窗口
<script language=JavaScript>
self.opener.location.reload();
</script>
( 或 <a href="javascript:opener.location.reload()">刷新</a> )
//如何刷新另一个框架的页面用
<script language=JavaScript>
parent.另一FrameID.location.reload();
</script>
要关闭窗口时刷新或开窗时刷新,在<body>中调用以下语句即可:
<body onload="opener.location.reload()"> 开窗时刷新
<body onUnload="opener.location.reload()"> 关闭时刷新
<script language="javascript">
window.opener.document.location.reload()
</script>
php版jtbc1.0添加判断是否后台登录函数
通过判断是否后台来区别是否前台,来实现输出不同模板文件,实现多模板共存,快速切换功能.
function ii_isAdmin()
{
$bool = false;
$strurl = str_replace('/', '', dirname($_SERVER['PHP_SELF']));
$strlen = strlen(ADMIN_FOLDER);
if(ADMIN_FOLDER == substr($strurl, 0, $strlen)) $bool = true;
return $bool;
}
1、下载 qq 互联 php 版开发包 http://wiki.open.qq.com/wiki/website/SDK下载
2、把文件夹 API、install和文件index.php 复制到 expansion 文件加下。
3、地址栏输入" 域名/expansion/qq/" 按提示执行相关配置。回调地址:passport/qqdenglu.php
4、
<?php
require_once("../expansion/qq/API/qqConnectAPI.php");
require('../common/incfiles/function.inc.php');
define('APP_NAME', 'jtbc_');
define('COOKIES_PATH', '/');
$qc = new QC();
$access_token = $qc->qq_callback();
$openid = $qc->get_openid();
$qcc = new QC($access_token,$openid);
$arr = $qcc->get_user_info();
if (!is_null($arr))
{
$access_token = md5($access_token);
$_SESSION[APP_NAME . 'access_token'] = $access_token;
$dialog_url = "=" . $arr["nickname"] . "&sex=" . $arr["gender"] . "&openid=" . $openid . "&access_token=" . $access_token ;
echo '<meta charset="UTF-8">';
echo("<script> top.location.href='" . $dialog_url . "'</script>");
exit();
}
else
{
echo "<script>alert('登陆失败');</script>";
}
?>
5、加处理函数passport/common/incfiles/interface_config.inc.php, 注意:加处跳转代码,请自行添加。
<?php
function jtbc_cms_interface_qq_denglu()
{
$sex = ii_unescape(ii_get_safecode($_GET['sex']));
$name = ii_unescape(ii_get_safecode($_GET['name']));
$openid = ii_get_safecode($_GET['openid']);
$access_token = ii_unescape(ii_get_safecode($_GET['access_token']));
if $access_token != $_SESSION[APP_NAME . 'access_token'] die('forbidden');
global $conn;
global $ndatabase, $nidfield, $nfpre;
$zucehao = $openid;
$zucema = $access_token;
if (ap_check_isuser($zucehao) == 0)
{
$tsqlstr = "insert into $ndatabase (
" . ii_cfname('username') . ",
" . ii_cfname('password') . ",
" . ii_cfname('name') . ",
" . ii_cfname('time') . "
) values (
'$zucehao',
'$zucema',
'$name',
'" . ii_now() . "'
)";
$trs = ii_conn_query($tsqlstr, $conn);
}
else
{
$tsqlstr = "update $ndatabase set " . ii_cfname('password') . "='$zucema' ," . ii_cfname('pretime') . "=" . ii_cfname('lasttime') . "," . ii_cfname('lasttime') . "='" . ii_now() . "' where " . ii_cfname('username') . "='$zucehao'";
$trs = ii_conn_query($tsqlstr, $conn);
}
if ($trs)
{
setcookie(APP_NAME . 'user[username]', $zucehao, 0, COOKIES_PATH);
setcookie(APP_NAME . 'user[password]', $access_token, 0, COOKIES_PATH);
$_SESSION[APP_NAME . 'username'] = $openid;
header('location:http://域名');
}
else
{
echo "<script>alert('系统出错');</script>";
}
}
6、添加登陆链接文件 expansion/qq/login.php
<?php
require_once("API/qqConnectAPI.php");
$qc = new QC();
$qc->qq_login();
7、删除 expansion/qq/ 下 install 文件夹 index.php 文件
来源:http://qihui.name/bian_cheng/96.html
第一种实现办法是用dir返回对象,第二种实现办法:用readdir()函数。
< ?php /********************** 一个简单的目录递归函数 第一种实现办法:用dir返回对象 ***********************/ function tree($directory) { $mydir = dir($directory); echo "
本项目是基于 JTBC CMS .NET/MSSQL 2011/2012 版本的扩展。
扩展说明:
开发用的JTBC核心代码由jtbc.dll反编译而来。
扩展的基本原则就是不改动核心代码(jtbc.dll),如项目需要则在jtbc.plus命名空间下扩展所需的方法。
扩展的代码全部开源发布。
### 一些记录: ###
安装模块时,注意模块里的建表SQL语句,需要去掉CREATE TABLE.....下面的GO,否则生成不了相应的数据表。
后台新增用户之用户模块权限之模板(data_popedom & data_category)循环标识符{@}位置应该在
之前忘了给pagi类的pagenum加一个最大页码的限制:if (pagenum > pagenums) pagenum = pagenums;
望JT给DLL里的类,使用一些面对对象的特性,以方便扩展。
本扩展来源于网络,感谢原作者的无私奉献.
下载地址:
https://wdjacms.pipipan.com/fs/16922972-242010128
更新:
淘宝官方提供SessionKey获取辅助工具
http://open.taobao.com/apitools/sessionPage.htm?spm=0.0.0.0.FeS4Qc
正式环境下获取SessionKey
客户端应用
访问 http://my.open.taobao.com/auth/authorize.htm?appkey={appkey},即可获得授权码
通过http方式访问 http://container.open.taobao.com/container?authcode={授权码},会得到类似如下的字符串top_appkey=1142&top_parameters=xxx&top_session=xxx&top_sign=xxx&encode=utf-8
字符串里面的top_session值即为SessionKey(后边xxx)
网站应用
网页打开http://my.open.taobao.com/auth/authorize.htm?appkey={appkey},
正常登录后会显示授权码。
网页打开 http://container.open.taobao.com/container?authcode={授权码},
网页打开后有类似如下的字符串top_appkey=1142&top_parameters=xxx&top_session=xxx&top_sign=xxx&encode=utf-8
字符串里面的top_session值即为SessionKey(后边xxx).
至此得到sessionkey
HBuilder默认App云端打包默认使用的是DCloud公用证书,其信息如下:
MD5: 59:20:1C:F6:58:92:02:CB:2C:DA:B2:67:52:47:21:12
SHA1:BA:AD:09:3A:82:82:9F:B4:32:A7:B2:8C:B4:CC:F0:E9:F3:7D:AE:58
应用签名:59201cf6589202cb2cdab26752472112
详情如下:
签名证书KeyStore文件下载地址HBuilder.keystore
证书别名:hbuilder
证书密码:123456
keystore密码:123456
S.O.L.I.D是面向对象设计和编程(OOD&OOP)中几个重要编码原则(Programming Priciple)的首字母缩写。
SRP | [The Single Responsibility Principle ] | 单一责任原则 |
---|---|---|
OCP | [The Open Closed Principle] | 开放封闭原则 |
LSP | [The Liskov Substitution Principle] | 里氏替换原则 |
DIP | [The Dependency Inversion Principle] | 依赖倒置原则 |
ISP | [The Interface Segregation Principle] | 接口分离原则 |