发布一个基于跨域Cookie的php单点登录系统(Single Sign On)
Passport服务访问地址http://passport.robinsite.cn/
接口演示地址http://demo.robinhong.cn/passport/
单点登录(Single Sign On),简称为SSO,是目前比较流行的企业业务整合的解决方案之一。SSO的定义是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统。
本系统的实质是含有身份验证状态的变量,在各个成员网站间可以跨域共用。
目前实现的功能比较简单,但是已经能应用到实际开发中:
1、注册
各成员网站提交注册信息并且保存到Passport服务器创建会员帐号。
2、登录
会员在第一次登录时,通过Passport服务器验证身份之后,生成的cookie验证票保存到Passport服务器。同一个浏览器进程中,会员在各成员网站间访问时不需要再次登录,只需要验证Passport服务器保存的身份信息完成各自的登录。对于cookie验证票,通过加密数据传输。
3、各成员网站可以通过数据接口保存会员个性信息。
更多关于SSO单点登录和Passport的介绍可以参考以下页面介绍:
http://baike.baidu.com/view/993620.htm
http://www.360doc.com/content/10/1117/20/4669937_70239762.shtml
从网上收集的近义词库,有18413条近义词替换。适合做伪原创的网站试用。
直接导入sql文件到mysql数据库就可以使用。
下载地址:http://download.csdn.net/source/2263185
一个API代码中发现的,有这样一段密钥:发送端写的是
′UJ$jsd$#%dfdsf33dgdf$222%%*&^sdfs%HGGfghfghHkjkjfhkHsdfD5wf33444′
,接收端写的是
″UJ$jsd$#%dfdsf33dgdf$222%%*&^sdfs%HGGfghfghHkjkjfhkHsdfD5wf33444″
,结果两边的MD5值总是不一样。没想到是引号惹得祸。请注意这个密钥的特殊性。
算是上期API的一个应用
一次性输入需要查询的全部网址,一行一个网址,可以批量查出全部的ALEAX排名。
可以点击 alexa 批量查询 体验。
使用方法:
点击下面链接[alexa排名],把网址放在参数里就可以了。
只显示简单的alexa排名数字。
Smarty是一个使用PHP写出来的模板PHP模板引擎,是目前业界最著名的PHP模板引擎之一。它分离了逻辑代码和外在的内容,提供了一种易于管理和使用的方法,用来将原本与HTML代码混杂在一起PHP代码逻辑分离。
smarty的插件有function, modifier, block, compiler,prefilter, postfilter, outputfilter, resource, insert等几种类型, 本文中我们只使用function型插件。
代码请看function.page.php
主要有三种分页效果,select分页,数字链接分页,上下页链接分页。
模板里调用示例
{{page values=$RS_PAGE output=”共有<span>%recordcount</span>条记录 每页<span>%pagesize</span>条记录 第<span>%pagenum</span>页/共%pagecount页 %first %prev %next %last %select %list” first=”首页” prev=”上页” next=”下页” last=”末页” select=”第%pagenum页” list=5}}
说明一下 values是要传入的分页数据信息,$RS_PAGE=$arrPage[recordcount,pagesize,page,pagecount,pagelink],分别是数据记录总数、每页记录数、当前页、总页数、分页链接文件。output是分页显示的效果,想要显示不同的分页效果直接在模板里修改这个参数的值就可以。
下面看一下实际效果
http://demo.robinhong.cn/smarty-page/smarty-page.php
这是去年写的一个小程序,记得那天中午有个同事拿着报纸上的一个数独的题目来给我们玩,我们开始就在报纸上用笔做标记在算,算了半个小时都没算出来,后来我就想,干脆写段程序来计算快多了。先看一下这个程序。详细的算法说明在页面源代码的注释可以看到。下面提供几个九宫格的数独题目。可以测试一下程序哪里有问题。
000001000
009300400
050700280
086200003
000000000
100004590
023008070
004006100
000500000
136705009
000200703
708000145
000460900
600012500
903807000
301508690
800100354
007604002
现在很多SNS网站都有类似导入MSN、邮箱联系人的功能,其实用PHP就可以实现,看一个php读取MSN联系人的例子。
如果想要实现更复杂的功能,比如给联系人发送消息,可以参考 http://code.google.com/p/phpmsnclass/。