Discuz Ucenter整合自己应用程序代码
安装(这个不用说详了吧)
安装官方安装后,会自动把ucenter和dz打通的,如图
3、添加自己的新的应用
点添加新应用,然后选自定义,然后如图(根据你自己的更改)输入
4、创建自己的测试环境
把UCenter_1.5.0_SC_UTF8(1)advancedexamples拷贝到你的测试目录,并把advanced中的uc_client放到examples目录下~~
(1)修改config.inc.php为自己本机的配置,如下是我的,可参考
<?php
define('UC_CONNECT', 'mysql'); // 连接 UCenter 的方式: mysql/NULL, 默认为空时为 fscoketopen()
// mysql 是直接连接的数据库, 为了效率, 建议采用 mysql
//数据库相关 (mysql 连接时, 并且没有设置 UC_DBLINK 时, 需要配置以下变量)
define('UC_DBHOST', 'localhost'); // UCenter 数据库主机
define('UC_DBUSER', 'root'); // UCenter 数据库用户名
define('UC_DBPW', ''); // UCenter 数据库密码
define('UC_DBNAME', 'ps_ucenter'); // UCenter 数据库名称
define('UC_DBCHARSET', 'utf8'); // UCenter 数据库字符集
define('UC_DBTABLEPRE', 'ps_ucenter.uc_'); // UCenter 数据库表前缀
//通信相关
define('UC_KEY', 'example2'); // 与 UCenter 的通信密钥, 要与 UCenter 保持一致
define('UC_API', 'http://localhost/project/passport/ucenter_1.5.0_sc_utf8(1)/upload');// UCenter 的 URL 地址, 在调用头像时依赖此常量
define('UC_CHARSET', 'utf8'); // UCenter 的字符集
define('UC_IP', ''); // UCenter 的 IP, 当 UC_CONNECT 为非 mysql 方式时, 并且当前应用服务器解析域名有问题时, 请设置此值
define('UC_APPID', 4); // 当前应用的 ID
//ucexample_2.php 用到的应用程序数据库连接参数
$dbhost = 'localhost'; // 数据库服务器
$dbuser = 'root'; // 数据库用户名
$dbpw = ''; // 数据库密码
$dbname = 'ps_example'; // 数据库名
$pconnect = 0; // 数据库持久连接 0=关闭, 1=打开
$tablepre = 'example_'; // 表名前缀, 同一数据库安装多个论坛请修改此处
$dbcharset = 'utf8'; // MySQL 字符集, 可选 'gbk', 'big5', 'utf8', 'latin1', 留空为按照论坛字符集设定
//同步登录 Cookie 设置
$cookiedomain = ''; // cookie 作用域
$cookiepath = '/'; // cookie 作用路径
这个是我的,注意,其中的数据库配置,还有UC_KEY之类的,一定要和自定义的相同。。。
这时再去Ucenter的应用管理去看一下,如果出现如下,说明配置正确,然后再进行下面的步骤
(2)创建测试数据库ps_example,并建立如下表
`uid` int(11) NOT NULL COMMENT 'UID',
`username` char(15) default NULL COMMENT '用户名',
`admin` tinyint(1) default NULL COMMENT '是否为管理员',
PRIMARY KEY (`uid`)
) TYPE=MyISAM;
(3)然后进入example目录中,打开ucexample_1.php,ucexample_2.php进行测试吧~~~!
如果顺利,应该可以看到如下(一下是运行ucexample_2.php的截图)
1、将下载的 IIS Rewrite 组件解压,放到适当的目录(如 C:Rewrite)下。
2、在“IIS管理器”里选择网站,右键,属性。
3、选择“ISAPI”,点击“添加”。
4、填入筛选器名称,如“rewrite”。
5、可执行文件下方点击“浏览”,选择刚才解压的Rewrite组件位置,Rewrite.dll。
6、确认选择正确后,点击“确定”。
7、点击“确定”,完成筛选器添加。
8、重启IIS。
9、重启IIS后,再次选择站点,右键,属性,看到如下所示向上的绿箭头,说明 IIS Rewrite 成功添加并运行。
IIS Rewrite 规则设置
解压后的 IIS Rewrite 组件目录(如 C:Rewrite)中,有一个 httpd.ini 文件,将相应规则写入到这个文件中即可。
1. 安装重写插件Rewrite.dll
如果你的 IIS 服务器加载过 Rewrite.dll 则可以不用下载。
Rewrite.dll文件:http://blog.hxxsh.com/UploadFiles/2006-10/1013525016.rar
加载 Rewrite.dll
在 IIS 的 Isapi 上添加筛选器
筛选器名称为:re
可执行文件选择 Rewrite.dll 就可以了!
2. 配置 httpd.ini
打开你的httpd.ini,找到
[ISAPI_Rewrite]
# 3600 = 1 hour
CacheClockRate 3600
RepeatLimit 32
# Protect httpd.ini and httpd.parse.errors files
# from accessing through HTTP
RewriteRule ^(.*)/archiver/([a-z0-9-]+.html)$ $1/archiver/index.php?$2
RewriteRule ^(.*)/forum-([0-9]+)-([0-9]+).html$ $1/forumdisplay.php?fid=$2&page=$3
RewriteRule ^(.*)/thread-([0-9]+)-([0-9]+)-([0-9]+).html$ $1/viewthread.php?tid=$2&extra=page%3D$4&page=$3
RewriteRule ^(.*)/profile-(username|uid)-(.+?).html$ $1/viewpro.php?$2=$3
以上是 Discuz!官方提供的配置代码,注意正则格式。
3. 应用
比如,将read.php?bl_id=123&bu_id=456 伪静态成 /html/123/456.html
可以这样写:
RewriteRule ^(.*)/html/([0-9]+)/([0-9]+).html$ $1/read.php?bl_id=$2&bu_id=$3 点击收藏:“IIS下下伪静态html(URL Rewrite)设置方法”
1. 安装重写插件Rewrite.dll
如果你的 IIS 服务器加载过 Rewrite.dll 则可以不用下载。
加载 Rewrite.dll
在 IIS 的 Isapi 上添加筛选器
筛选器名称为:re
可执行文件选择 Rewrite.dll 就可以了!
2. 配置 httpd.ini
打开你的httpd.ini,找到
[ISAPI_Rewrite]
# 3600 = 1 hour
CacheClockRate 3600
RepeatLimit 32
# Protect httpd.ini and httpd.parse.errors files
# from accessing through HTTP
RewriteRule ^(.*)/archiver/([a-z0-9-]+.html)$ $1/archiver/index.php?$2
RewriteRule ^(.*)/forum-([0-9]+)-([0-9]+).html$ $1/forumdisplay.php?fid=$2&page=$3
RewriteRule ^(.*)/thread-([0-9]+)-([0-9]+)-([0-9]+).html$ $1/viewthread.php?tid=$2&extra=page%3D$4&page=$3
RewriteRule ^(.*)/profile-(username|uid)-(.+?).html$ $1/viewpro.php?$2=$3
以上是 Discuz!官方提供的配置代码,注意正则格式。
3. 应用
比如,将read.php?bl_id=123&bu_id=456 伪静态成 /html/123/456.html
可以这样写:
RewriteRule ^(.*)/html/([0-9]+)/([0-9]+).html$ $1/read.php?bl_id=$2&bu_id=$3
PW的规则:[ISAPI_Rewrite]
RewriteRule ^(.*)-htm-(.*)$ $1.php?$2
RewriteRule ^(.*)/simple/([a-z0-9_]+.html)$ $1/simple/index.php?$2
js计算时分秒代码
<script>
function b(n){
return n>=10 ? n : "0"+n;
}
function getNow(){
var d=new Date();
var s = d.getFullYear() + "-" +b((d.getMonth()+1)) + "-" + b(d.getDate()) + " " + b(d.getHours()) + ":" + b(d.getMinutes()) + ":" + b(d.getSeconds());
return s;
}
alert(getNow());
</script>
Discuz! 与 UCenter 连接的一些信息,本设置在论坛安装时自动生成,一般情况下请不要修改,修改前请备份 config.inc.php 文件,以防止修改错误导致论坛无法运行。
设置的位置在:Discuz! 后台 => 全局 => UCenter 设置,如下图所示:
请根据 UCenter 中的对应信息,详细设置下面的信息即可。
UCenter 应用 ID:该值为当前论坛在 UCenter 的应用 ID,一般情况请不要改动。
UCenter 通信密钥:通信密钥用于在 UCenter 和 Discuz! 之间传输信息的加密,可包含任何字母及数字,请在 UCenter 与 Discuz! 设置完全相同的通讯密钥,以确保两套系统能够正常通信。
UCenter 访问地址:该值在您安装完 UCenter 后会被初始化,在您 UCenter 地址或者目录改变的情况下,修改此项,一般情况请不要改动。例如: http://www.sitename.com/uc_server (最后不要加'/')
UCenter IP 地址:如果您的服务器无法通过域名访问 UCenter,可以输入 UCenter 服务器的 IP 地址。
UCenter 连接方式:请根据您的服务器网络环境选择适当的连接方式。如果您的 UCenter 和 Discuz! 在同一台服务器则可以选择数据库方式,同时会看到上图中的设置项目;如果您的 UCenter 和 Discuz! 不在同一台服务器则可以选择接口方式,接口方式无需设置其他的选项。
UCenter 数据库服务器:可以是本地也可以是远程数据库服务器,如果 MySQL 端口不是默认的 3306,请填写如下形式:127.0.0.1:6033。
UCenter 数据库用户名、密码、数据库名、表前缀请根据 UCenter 实际的数据库信息填写即可。
是否允许在论坛激活:在其他应用注册的用户,是否允许在论坛激活。
当您的 UCenter 系统中安装了 UCenter Home 应用,则会看到下图的设置项目
将哪种类型的帖子加入到 UCHome 的动态:如果有人发起、回复或者参与选中类型的主题,这个动作将会发布到 UCHome ,显示到 UCHome 的站点动态。如果不选“回复主题”,那么只有发起主题的动作发布到 UCHome。
这里的通信密钥要和 config.pnp 里的 define('UC_KEY',后面的数字对应
UC通信情况一直显示正在连接...,怎么办?
上回我也是这样的。不过修改了CONFIG里的KEY通信密钥就好啦
js 浏览器环境检查代码
<html>
<head>
<title>浏览器环境检查</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<script>
<!--
function ignoreError(){
return true;
}
window.onerror = ignoreError;
document.cookie = "Suport=" + escape("Session");
//-->
</script>
<style type="text/css">
<!--
table {
font-size: 12px;
}
-->
</style>
</head>
<body bgcolor="#FFFFFF">
<p align="center"><font color="#FF0000">检查结果: </font><span id="vsport"><font color=red>本机浏览器不能正常访问中国WEB第一站</font></span></p>
<table width="720" border="0" cellspacing="1" cellpadding="5" align="center" bgcolor="#999999" bordercolor="#999999">
<tr bgcolor="#EEEEEE">
<th height="32" align="center" nowrap>项